1
0
mirror of https://github.com/chylex/Nextcloud-Desktop.git synced 2026-04-08 03:46:49 +02:00

Compare commits

...

44 Commits

Author SHA1 Message Date
Camila
0a62628f8a Bump version to 3.0.1.
Signed-off-by: Camila <hello@camila.codes>
2020-08-28 11:45:24 +02:00
Nextcloud bot
772a34ba46 [tx-robot] updated from transifex 2020-08-28 03:25:46 +00:00
Nextcloud bot
42ea6b5427 [tx-robot] updated from transifex 2020-08-27 03:28:47 +00:00
Michael Schuster
3ea57abfec Remove remaining QLinkedList includes in addition to #2300
Now the only remaining reference is in:

src/3rdparty/libcrashreporter-qt/3rdparty/drkonqi-parser/backtraceparser.cpp:269:        || line.functionName().startsWith(QLatin1String("QLinkedList")

Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit 5945f18d5a)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-27 03:41:14 +02:00
Michael Schuster
6f2156cacd Merge pull request #2323 from nextcloud/backport/2300/stable-3.0
[stable-3.0] Support client builds on VS2019 (QLinkedList is deprecated)
2020-08-27 02:22:45 +02:00
Michael Schuster
9e5225d83d Adapt code style in addition to #2300
- Use "!empty()" instead of "size() > 0" in std::list
- Add comments for namespace brackets

Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit bd519ffe7a)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-27 02:13:06 +02:00
V.C
957dd16770 Code review changes implemented
Code review changes implemented for bandwidthmanager.cpp
1. Use auto instead of size_t
2. Check for empty instead of size comparisions

Signed-off-by: V.C <c******@rediffmail.com>
(cherry picked from commit b20ea25201)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-27 02:12:53 +02:00
V.C
95401e5985 Support client builds on VS2019
Scenario: Build fails on Qt 5.15.0 + VS2019 16.7.2
Root cause: QLinkedList seems to be depreciated. Advise to use std::list instead.
Fix: Used std::list insead of QLinkedList.

Signed-off-by: V.C <c******@rediffmail.com>
(cherry picked from commit af1bb7e98c)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-27 02:12:51 +02:00
Nextcloud bot
a15b66d525 [tx-robot] updated from transifex 2020-08-26 03:28:55 +00:00
Nextcloud bot
e0b53b3bda [tx-robot] updated from transifex 2020-08-25 03:31:22 +00:00
Nextcloud bot
2015aab626 [tx-robot] updated from transifex 2020-08-24 03:29:52 +00:00
Nextcloud bot
90402f8dcb [tx-robot] updated from transifex 2020-08-22 03:27:54 +00:00
Michael Schuster
0de6823cca Merge pull request #2304 from nextcloud/backport/2302/stable-3.0
[stable-3.0] Do not build for Eoan
2020-08-22 00:57:03 +02:00
István Váradi
c560db000a Do not build for Eoan
Signed-off-by: István Váradi <ivaradi@varadiistvan.hu>
2020-08-21 22:56:18 +00:00
Nextcloud bot
fba819e65b [tx-robot] updated from transifex 2020-08-21 03:29:21 +00:00
Michael Schuster
d02f1b80f3 Merge pull request #2297 from nextcloud/backport/2288/stable-3.0
[stable-3.0] Windows shell extensions: Use custom GUIDs and prepare for MSI
2020-08-20 21:39:48 +02:00
Michael Schuster
fc79e035c6 Fix spacing
Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit 4df8db4ff6)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:32:06 +02:00
Michael Schuster
ee332dcaec Windows shell extensions: Add WiX (MSI) fragment
Use CMake to generate a WXI fragment to handle the DLL registration and file deployment for the shellext components.

Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit db05f65e0d)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:31:56 +02:00
Michael Schuster
b5fc4f86a7 Windows shell extensions: Change NCUtil Pipe name from ownCloud to APPLICATION_EXECUTABLE
Avoid interference with foreign pipes as this is always a bad idea ;p

Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit 11632da7ea)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:31:23 +02:00
Michael Schuster
3ac99c75b0 Windows shell extensions: Rename all files and classes from OC* to NC*, update version info
This also ensures a clear separation in the system registry.

SelfReg is not recommended by Microsoft and will be handled by the MSI package to allow proper Repair and Uninstall.
However, we keep it for backward compatibility with the NSIS installer.

For details see:
https://stackoverflow.com/questions/364187/how-do-you-register-a-win32-com-dll-file-in-wix-3#364210
https://docs.microsoft.com/en-us/windows/win32/msi/selfreg-table#remarks

Another fix by this commit:
The "Version" registry value in the NCOverlays self reg should be a key and not a value.

Details: https://wixtoolset.org/documentation/manual/v3/xsd/wix/class.html

Example:

  [HKCR\CLSID\{01234567-89AB-CDEF-0123-456789ABCDEF}\Version]
  @="1.0.0.0"

Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit 0ba5df597f)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:28:18 +02:00
Michael Schuster
a02e4a2913 Windows shell extensions: Use custom GUIDs via CMake and prepare MSI reg
Previously side by side installation with ownCloud or other NC custom builds would break the shell integration because the same GUIDs and registry keys were used.

Now we specify our custom GUIDs in NEXTCLOUD.cmake and use CMake to generate a header file and WiX (MSI) include file with these constants.

Note: Using generators like "guidgen" or "uuidgen" ensures that GUIDs are unique, as manual changes are not guaranteed to be.

Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit 8ce13b7bdb)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:28:10 +02:00
Hannah von Reth
a7b93e36ff Remove dead code
Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit 4675869fb3)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:28:02 +02:00
Hannah von Reth
a742a42f4c 2.7 has less automatic includes on Windows
Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit bfd7707ff4)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:27:53 +02:00
Hannah von Reth
2537f0cd4c Cleanup Windows shell extensions
Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit 34e9e2f288)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:27:44 +02:00
Hannah von Reth
4e44f46b9e Remove outdated visual studio projects, we now use cmake
Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit 6c9a31f6ee)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:27:35 +02:00
Dominik Schmidt
b86bc92875 Avoid warning because /MT overrides /MD flag
Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit 13d4b91935)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:27:27 +02:00
Dominik Schmidt
c3b1e4bd9a Make OCUtil helper lib static and link it statically against crt
Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit e4b53b12e1)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:27:11 +02:00
Olivier Goffart
3fd3f85558 Windows Shell Integration: Don't limit the size of the buffer
Otherwise we can't have operation that has many many filename

As reported in #6780

Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit 906556640d)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:27:01 +02:00
Christian Kamm
811b0eb6db Windows shellext: Update copyrights and company name
Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit 77cc262337)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:26:52 +02:00
Olivier Goffart
7acc7dae35 windows shell extension: add OCUtil/resource.h
It's a copy from OCContextMenu/resources.h

Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit 6274462036)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:26:42 +02:00
Christian Kamm
4c9e19b82c Windows shellext: Add rc for OCUtil #6554
To set the dll's metadata.

Signed-off-by: Michael Schuster <michael@schuster.ms>
(cherry picked from commit c6fc46aa09)
Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-08-20 21:26:12 +02:00
Kevin Ottens
3770e75561 Merge pull request #2294 from nextcloud/backport/2292/stable-3.0
[stable-3.0] Disable context menu actions for E2EE files and folders
2020-08-20 18:39:02 +02:00
Kevin Ottens
14d4160729 Present sharing of E2EE files from the main dialog too
The visibility of the share button for the activity list is tied to the
path role in the ActivityListModel, so make sure we don't return a path
for E2EE files and folders.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-20 16:37:26 +00:00
Kevin Ottens
6dcf261abe Disable context menu actions for E2EE files and folders
Those files and folders are not shareable and the "Edit" or "Open in
browser" actions will lead to showing an error in the web GUI. No need
to lead users there so just disable them.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-20 16:37:26 +00:00
Nextcloud bot
3d3d6bf2d9 [tx-robot] updated from transifex 2020-08-20 03:31:35 +00:00
Nextcloud bot
a957a9924e [tx-robot] updated from transifex 2020-08-19 03:31:55 +00:00
Kevin Ottens
7de04654c5 Show the "Display mnemonic" button only when we know e2e is supported
Turns out that showing the button straight from the page ctor is a bit
too early. At that point the account might not be connected yet and thus
we wouldn't have proper information. Currently we were displaying that
button all the time, now we wait for the account to be connected to
decide to show it or not.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-18 18:01:07 +02:00
Kevin Ottens
a60fa8ba85 [stable-3.0] Make sure we don't assert when calling fileStatus
It happens that sometimes we leak a directory path ending with a slash,
but that violates fileStatus' precondition so let's catch it early and
skip such path.

Of course the right fix would be a larger swipe in the sync engine and
around it to not use naked strings anymore but rely on the typesystem.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-18 16:12:44 +02:00
Nextcloud bot
6ad1357ac0 [tx-robot] updated from transifex 2020-08-18 03:33:47 +00:00
Nextcloud bot
48b8848dcc [tx-robot] updated from transifex 2020-08-17 03:27:18 +00:00
Nextcloud bot
42f7d3e538 [tx-robot] updated from transifex 2020-08-16 03:27:23 +00:00
Nextcloud bot
ce126e6d7f [tx-robot] updated from transifex 2020-08-14 03:43:45 +00:00
Nextcloud bot
824e853b2a [tx-robot] updated from transifex 2020-08-13 03:29:42 +00:00
Nextcloud bot
97020728c1 [tx-robot] updated from transifex 2020-08-12 03:29:22 +00:00
135 changed files with 5543 additions and 6151 deletions

View File

@@ -199,6 +199,6 @@ X-GNOME-Autostart-Delay=3
# Translations
Icon[ca]=@APPLICATION_ICON_NAME@
Name[ca]=Client de sincronització d'escriptori del @APPLICATION_NAME@
Name[ca]=Client de sincronització d'escriptori del @APPLICATION_NAME@
Comment[ca]=Client de sincronització d'escriptori del @APPLICATION_NAME@
GenericName[ca]=Directori de sincronització
GenericName[ca]=Sincronització de carpetes

View File

@@ -198,7 +198,7 @@ X-GNOME-Autostart-Delay=3
# Translations
Icon[de_DE]=@APPLICATION_ICON_NAME@
Name[de_DE]=@APPLICATION_NAME@ Client zur Desktop-Synchronisierung
Comment[de_DE]=@APPLICATION_NAME@ Client zur Desktop-Synchronisierung
GenericName[de_DE]=Synchronisierungsordner
Icon[de]=@APPLICATION_ICON_NAME@
Name[de]=@APPLICATION_NAME@ Client zur Desktop-Synchronisierung
Comment[de]=@APPLICATION_NAME@ Client zur Desktop-Synchronisierung
GenericName[de]=Synchronisierungsordner

View File

@@ -35,3 +35,17 @@ set( APPLICATION_WIZARD_HEADER_BACKGROUND_COLOR "#0082c9" CACHE STRING "Hex colo
set( APPLICATION_WIZARD_HEADER_TITLE_COLOR "#ffffff" CACHE STRING "Hex color of the text in the wizard header")
option( APPLICATION_WIZARD_USE_CUSTOM_LOGO "Use the logo from ':/client/theme/colored/wizard_logo.png' else the default application icon is used" ON )
#
## Windows Shell Extensions - IMPORTANT: Generate new GUIDs for custom builds with "guidgen" or "uuidgen"
#
# Context Menu
set( WIN_SHELLEXT_CONTEXT_MENU_GUID "{BC6988AB-ACE2-4B81-84DC-DC34F9B24401}" )
# Overlays
set( WIN_SHELLEXT_OVERLAY_GUID_ERROR "{E0342B74-7593-4C70-9D61-22F294AAFE05}" )
set( WIN_SHELLEXT_OVERLAY_GUID_OK "{E1094E94-BE93-4EA2-9639-8475C68F3886}" )
set( WIN_SHELLEXT_OVERLAY_GUID_OK_SHARED "{E243AD85-F71B-496B-B17E-B8091CBE93D2}" )
set( WIN_SHELLEXT_OVERLAY_GUID_SYNC "{E3D6DB20-1D83-4829-B5C9-941B31C0C35A}" )
set( WIN_SHELLEXT_OVERLAY_GUID_WARNING "{E4977F33-F93A-4A0A-9D3C-83DEA0EE8483}" )

View File

@@ -1,6 +1,6 @@
set( MIRALL_VERSION_MAJOR 3 )
set( MIRALL_VERSION_MINOR 0 )
set( MIRALL_VERSION_PATCH 0 )
set( MIRALL_VERSION_PATCH 1 )
set( MIRALL_VERSION_YEAR 2020 )
set( MIRALL_SOVERSION 0 )

View File

@@ -15,10 +15,10 @@ OBS_PROJECT_BETA=home:ivaradi:beta
OBS_PACKAGE=nextcloud-desktop
if test "${DRONE_TARGET_BRANCH}" = "stable-2.6"; then
UBUNTU_DISTRIBUTIONS="bionic eoan focal groovy"
UBUNTU_DISTRIBUTIONS="bionic focal groovy"
DEBIAN_DISTRIBUTIONS="buster stretch testing"
else
UBUNTU_DISTRIBUTIONS="eoan focal groovy"
UBUNTU_DISTRIBUTIONS="focal groovy"
DEBIAN_DISTRIBUTIONS="testing"
fi

View File

@@ -1,4 +1,15 @@
add_subdirectory(OCContextMenu)
add_subdirectory(OCOverlays)
add_subdirectory(OCUtil)
# Use static runtime for all subdirectories
foreach(buildType "" "_DEBUG" "_MINSIZEREL" "_RELEASE" "_RELWITHDEBINFO")
string(REPLACE "/MD" "/MT" "CMAKE_CXX_FLAGS${buildType}" "${CMAKE_CXX_FLAGS${buildType}}")
endforeach()
include_directories(
${CMAKE_CURRENT_BINARY_DIR}
)
configure_file(WinShellExtConstants.h.in ${CMAKE_CURRENT_BINARY_DIR}/WinShellExtConstants.h)
configure_file(WinShellExt.wxs.in ${CMAKE_CURRENT_BINARY_DIR}/WinShellExt.wxs)
add_subdirectory(NCContextMenu)
add_subdirectory(NCOverlays)
add_subdirectory(NCUtil)

View File

@@ -0,0 +1,17 @@
add_library(NCContextMenu MODULE
dllmain.cpp
NCClientInterface.cpp
NCContextMenu.cpp
NCContextMenuFactory.cpp
NCContextMenuRegHandler.cpp
NCContextMenu.rc
NCContextMenu.def
)
target_link_libraries(NCContextMenu
NCUtil)
install(TARGETS NCContextMenu
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_BINDIR}
)

View File

@@ -12,9 +12,7 @@
* details.
*/
#include "stdafx.h"
#include "OCClientInterface.h"
#include "NCClientInterface.h"
#include "CommunicationSocket.h"
#include "StringUtil.h"
@@ -32,9 +30,8 @@
using namespace std;
#define PIPE_TIMEOUT 5*1000 //ms
#define SOCK_BUFFER 4096
OCClientInterface::ContextMenuInfo OCClientInterface::FetchInfo(const std::wstring &files)
NCClientInterface::ContextMenuInfo NCClientInterface::FetchInfo(const std::wstring &files)
{
auto pipename = CommunicationSocket::DefaultPipePath();
@@ -80,7 +77,7 @@ OCClientInterface::ContextMenuInfo OCClientInterface::FetchInfo(const std::wstri
return info;
}
void OCClientInterface::SendRequest(const wchar_t *verb, const std::wstring &path)
void NCClientInterface::SendRequest(const wchar_t *verb, const std::wstring &path)
{
auto pipename = CommunicationSocket::DefaultPipePath();
@@ -92,9 +89,5 @@ void OCClientInterface::SendRequest(const wchar_t *verb, const std::wstring &pat
return;
}
wchar_t msg[SOCK_BUFFER] = { 0 };
if (SUCCEEDED(StringCchPrintf(msg, SOCK_BUFFER, L"%s:%s\n", verb, path.c_str())))
{
socket.SendMsg(msg);
}
socket.SendMsg((verb + (L":" + path + L"\n")).data());
}

View File

@@ -40,7 +40,7 @@
class CommunicationSocket;
class OCClientInterface
class NCClientInterface
{
public:
struct ContextMenuInfo {

View File

@@ -12,25 +12,24 @@
* details.
*/
#include "stdafx.h"
#include "OCContextMenu.h"
#include "OCClientInterface.h"
#include "NCContextMenu.h"
#include "NCClientInterface.h"
#include <shobjidl.h>
#include <shlwapi.h>
#include <shellapi.h>
#include <StringUtil.h>
#include <strsafe.h>
extern long g_cDllRef;
OCContextMenu::OCContextMenu(void)
NCContextMenu::NCContextMenu(void)
: m_cRef(1)
{
InterlockedIncrement(&g_cDllRef);
}
OCContextMenu::~OCContextMenu(void)
NCContextMenu::~NCContextMenu(void)
{
InterlockedDecrement(&g_cDllRef);
}
@@ -38,25 +37,25 @@ OCContextMenu::~OCContextMenu(void)
#pragma region IUnknown
// Query to the interface the component supported.
IFACEMETHODIMP OCContextMenu::QueryInterface(REFIID riid, void **ppv)
IFACEMETHODIMP NCContextMenu::QueryInterface(REFIID riid, void **ppv)
{
static const QITAB qit[] =
{
QITABENT(OCContextMenu, IContextMenu),
QITABENT(OCContextMenu, IShellExtInit),
QITABENT(NCContextMenu, IContextMenu),
QITABENT(NCContextMenu, IShellExtInit),
{ 0 },
};
return QISearch(this, qit, riid, ppv);
}
// Increase the reference count for an interface on an object.
IFACEMETHODIMP_(ULONG) OCContextMenu::AddRef()
IFACEMETHODIMP_(ULONG) NCContextMenu::AddRef()
{
return InterlockedIncrement(&m_cRef);
}
// Decrease the reference count for an interface on an object.
IFACEMETHODIMP_(ULONG) OCContextMenu::Release()
IFACEMETHODIMP_(ULONG) NCContextMenu::Release()
{
ULONG cRef = InterlockedDecrement(&m_cRef);
if (0 == cRef) {
@@ -72,7 +71,7 @@ IFACEMETHODIMP_(ULONG) OCContextMenu::Release()
#pragma region IShellExtInit
// Initialize the context menu handler.
IFACEMETHODIMP OCContextMenu::Initialize(
IFACEMETHODIMP NCContextMenu::Initialize(
LPCITEMIDLIST pidlFolder, LPDATAOBJECT pDataObj, HKEY hKeyProgID)
{
m_selectedFiles.clear();
@@ -128,7 +127,7 @@ void InsertSeperator(HMENU hMenu, UINT indexMenu)
InsertMenuItem(hMenu, indexMenu, TRUE, &sep);
}
IFACEMETHODIMP OCContextMenu::QueryContextMenu(HMENU hMenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags)
IFACEMETHODIMP NCContextMenu::QueryContextMenu(HMENU hMenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags)
{
// If uFlags include CMF_DEFAULTONLY then we should not do anything.
if (CMF_DEFAULTONLY & uFlags)
@@ -136,7 +135,7 @@ IFACEMETHODIMP OCContextMenu::QueryContextMenu(HMENU hMenu, UINT indexMenu, UINT
return MAKE_HRESULT(SEVERITY_SUCCESS, 0, USHORT(0));
}
m_info = OCClientInterface::FetchInfo(m_selectedFiles);
m_info = NCClientInterface::FetchInfo(m_selectedFiles);
if (m_info.menuItems.empty()) {
return MAKE_HRESULT(SEVERITY_SUCCESS, 0, USHORT(0));
}
@@ -178,7 +177,7 @@ IFACEMETHODIMP OCContextMenu::QueryContextMenu(HMENU hMenu, UINT indexMenu, UINT
return MAKE_HRESULT(SEVERITY_SUCCESS, 0, USHORT(indexSubMenu));
}
IFACEMETHODIMP OCContextMenu::InvokeCommand(LPCMINVOKECOMMANDINFO pici)
IFACEMETHODIMP NCContextMenu::InvokeCommand(LPCMINVOKECOMMANDINFO pici)
{
std::wstring command;
@@ -216,11 +215,11 @@ IFACEMETHODIMP OCContextMenu::InvokeCommand(LPCMINVOKECOMMANDINFO pici)
return E_FAIL;
}
OCClientInterface::SendRequest(command.data(), m_selectedFiles);
NCClientInterface::SendRequest(command.data(), m_selectedFiles);
return S_OK;
}
IFACEMETHODIMP OCContextMenu::GetCommandString(UINT_PTR idCommand,
IFACEMETHODIMP NCContextMenu::GetCommandString(UINT_PTR idCommand,
UINT uFlags, UINT *pwReserved, LPSTR pszName, UINT cchMax)
{
if (idCommand < m_info.menuItems.size() && uFlags == GCS_VERBW) {

View File

@@ -12,15 +12,15 @@
* details.
*/
#ifndef OCCONTEXTMENU_H
#define OCCONTEXTMENU_H
#ifndef NCCONTEXTMENU_H
#define NCCONTEXTMENU_H
#pragma once
#include <shlobj.h> // For IShellExtInit and IContextMenu
#include <string>
#include "OCClientInterface.h"
#include "NCClientInterface.h"
class OCContextMenu : public IShellExtInit, public IContextMenu
class NCContextMenu : public IShellExtInit, public IContextMenu
{
public:
// IUnknown
@@ -36,10 +36,10 @@ public:
IFACEMETHODIMP InvokeCommand(LPCMINVOKECOMMANDINFO pici);
IFACEMETHODIMP GetCommandString(UINT_PTR idCommand, UINT uFlags, UINT *pwReserved, LPSTR pszName, UINT cchMax);
OCContextMenu();
NCContextMenu();
protected:
~OCContextMenu();
~NCContextMenu();
private:
// Reference count of component.
@@ -47,7 +47,7 @@ private:
// The name of the selected files (separated by '\x1e')
std::wstring m_selectedFiles;
OCClientInterface::ContextMenuInfo m_info;
NCClientInterface::ContextMenuInfo m_info;
};
#endif //OCCONTEXTMENU_H
#endif //NCCONTEXTMENU_H

View File

@@ -12,10 +12,8 @@
* details.
*/
#include "stdafx.h"
#include "OCContextMenuFactory.h"
#include "OCContextMenu.h"
#include "NCContextMenuFactory.h"
#include "NCContextMenu.h"
#include <new>
#include <Shlwapi.h>
#pragma comment(lib, "shlwapi.lib")
@@ -24,12 +22,12 @@
extern long g_cDllRef;
OCContextMenuFactory::OCContextMenuFactory() : m_cRef(1)
NCContextMenuFactory::NCContextMenuFactory() : m_cRef(1)
{
InterlockedIncrement(&g_cDllRef);
}
OCContextMenuFactory::~OCContextMenuFactory()
NCContextMenuFactory::~NCContextMenuFactory()
{
InterlockedDecrement(&g_cDllRef);
}
@@ -37,18 +35,18 @@ OCContextMenuFactory::~OCContextMenuFactory()
// IUnknown methods
IFACEMETHODIMP OCContextMenuFactory::QueryInterface(REFIID riid, void **ppv)
IFACEMETHODIMP NCContextMenuFactory::QueryInterface(REFIID riid, void **ppv)
{
static const QITAB qit[] = { QITABENT(OCContextMenuFactory, IClassFactory), { 0 }, };
static const QITAB qit[] = { QITABENT(NCContextMenuFactory, IClassFactory), { 0 }, };
return QISearch(this, qit, riid, ppv);
}
IFACEMETHODIMP_(ULONG) OCContextMenuFactory::AddRef()
IFACEMETHODIMP_(ULONG) NCContextMenuFactory::AddRef()
{
return InterlockedIncrement(&m_cRef);
}
IFACEMETHODIMP_(ULONG) OCContextMenuFactory::Release()
IFACEMETHODIMP_(ULONG) NCContextMenuFactory::Release()
{
ULONG cRef = InterlockedDecrement(&m_cRef);
if (0 == cRef) {
@@ -60,7 +58,7 @@ IFACEMETHODIMP_(ULONG) OCContextMenuFactory::Release()
// IClassFactory methods
IFACEMETHODIMP OCContextMenuFactory::CreateInstance(IUnknown *pUnkOuter, REFIID riid, void **ppv)
IFACEMETHODIMP NCContextMenuFactory::CreateInstance(IUnknown *pUnkOuter, REFIID riid, void **ppv)
{
HRESULT hr = CLASS_E_NOAGGREGATION;
@@ -69,7 +67,7 @@ IFACEMETHODIMP OCContextMenuFactory::CreateInstance(IUnknown *pUnkOuter, REFIID
hr = E_OUTOFMEMORY;
// Create the COM component.
OCContextMenu *pExt = new (std::nothrow) OCContextMenu();
NCContextMenu *pExt = new (std::nothrow) NCContextMenu();
if (pExt) {
// Query the specified interface.
hr = pExt->QueryInterface(riid, ppv);
@@ -80,7 +78,7 @@ IFACEMETHODIMP OCContextMenuFactory::CreateInstance(IUnknown *pUnkOuter, REFIID
return hr;
}
IFACEMETHODIMP OCContextMenuFactory::LockServer(BOOL fLock)
IFACEMETHODIMP NCContextMenuFactory::LockServer(BOOL fLock)
{
if (fLock) {
InterlockedIncrement(&g_cDllRef);

View File

@@ -13,14 +13,14 @@
*/
#ifndef OCCONTEXTMENUFACTORY_H
#define OCCONTEXTMENUFACTORY_H
#ifndef NCCONTEXTMENUFACTORY_H
#define NCCONTEXTMENUFACTORY_H
#pragma once
#include <unknwn.h> // For IClassFactory
class OCContextMenuFactory : public IClassFactory
class NCContextMenuFactory : public IClassFactory
{
public:
// IUnknown
@@ -32,11 +32,11 @@ public:
IFACEMETHODIMP CreateInstance(IUnknown *pUnkOuter, REFIID riid, void **ppv);
IFACEMETHODIMP LockServer(BOOL fLock);
OCContextMenuFactory();
NCContextMenuFactory();
private:
~OCContextMenuFactory();
~NCContextMenuFactory();
long m_cRef;
};
#endif //OCCONTEXTMENUFACTORY_H
#endif //NCCONTEXTMENUFACTORY_H

View File

@@ -12,9 +12,7 @@
* details.
*/
#include "stdafx.h"
#include "OCContextMenuRegHandler.h"
#include "NCContextMenuRegHandler.h"
#include "RegDelnode.h"
#include <strsafe.h>
#include <objbase.h>
@@ -70,7 +68,7 @@ HRESULT GetHKCRRegistryKeyAndValue(PCWSTR pszSubKey, PCWSTR pszValueName, PWSTR
}
HRESULT OCContextMenuRegHandler::RegisterInprocServer(PCWSTR pszModule, const CLSID& clsid, PCWSTR pszFriendlyName, PCWSTR pszThreadModel)
HRESULT NCContextMenuRegHandler::RegisterInprocServer(PCWSTR pszModule, const CLSID& clsid, PCWSTR pszFriendlyName, PCWSTR pszThreadModel)
{
if (!pszModule || !pszThreadModel)
{
@@ -113,7 +111,7 @@ HRESULT OCContextMenuRegHandler::RegisterInprocServer(PCWSTR pszModule, const CL
return hr;
}
HRESULT OCContextMenuRegHandler::UnregisterInprocServer(const CLSID& clsid)
HRESULT NCContextMenuRegHandler::UnregisterInprocServer(const CLSID& clsid)
{
HRESULT hr = S_OK;
@@ -133,7 +131,7 @@ HRESULT OCContextMenuRegHandler::UnregisterInprocServer(const CLSID& clsid)
}
HRESULT OCContextMenuRegHandler::RegisterShellExtContextMenuHandler(
HRESULT NCContextMenuRegHandler::RegisterShellExtContextMenuHandler(
PCWSTR pszFileType, const CLSID& clsid, PCWSTR pszFriendlyName)
{
if (!pszFileType)
@@ -177,7 +175,7 @@ HRESULT OCContextMenuRegHandler::RegisterShellExtContextMenuHandler(
return hr;
}
HRESULT OCContextMenuRegHandler::UnregisterShellExtContextMenuHandler(
HRESULT NCContextMenuRegHandler::UnregisterShellExtContextMenuHandler(
PCWSTR pszFileType, PCWSTR pszFriendlyName)
{
if (!pszFileType)

View File

@@ -13,14 +13,14 @@
*/
#ifndef OCCONTEXTMENUREGHANDLER_H
#define OCCONTEXTMENUREGHANDLER_H
#ifndef NCCONTEXTMENUREGHANDLER_H
#define NCCONTEXTMENUREGHANDLER_H
#pragma once
#include "stdafx.h"
#include <windows.h>
class __declspec(dllexport) OCContextMenuRegHandler
class __declspec(dllexport) NCContextMenuRegHandler
{
public:
static HRESULT MakeRegistryEntries(const CLSID& clsid, PCWSTR fileType);
@@ -35,4 +35,4 @@ public:
static HRESULT UnregisterShellExtContextMenuHandler(PCWSTR pszFileType, PCWSTR pszFriendlyName);
};
#endif //OCCONTEXTMENUREGHANDLER_H
#endif //NCCONTEXTMENUREGHANDLER_H

View File

@@ -0,0 +1,124 @@
/**
* Copyright (c) 2015 Daniel Molkentin <danimo@owncloud.com>. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
#include <windows.h>
#include <Guiddef.h>
#include "NCContextMenuRegHandler.h"
#include "NCContextMenuFactory.h"
#include "WinShellExtConstants.h"
HINSTANCE g_hInst = nullptr;
long g_cDllRef = 0;
BOOL APIENTRY DllMain(HMODULE hModule, DWORD dwReason, LPVOID lpReserved)
{
switch (dwReason)
{
case DLL_PROCESS_ATTACH:
// Hold the instance of this DLL module, we will use it to get the
// path of the DLL to register the component.
g_hInst = hModule;
DisableThreadLibraryCalls(hModule);
break;
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
STDAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, void **ppv)
{
HRESULT hr;
GUID guid;
hr = CLSIDFromString(CONTEXT_MENU_GUID, (LPCLSID)&guid);
if (!SUCCEEDED(hr)) {
return hr;
}
hr = CLASS_E_CLASSNOTAVAILABLE;
if (IsEqualCLSID(guid, rclsid)) {
hr = E_OUTOFMEMORY;
NCContextMenuFactory *pClassFactory = new NCContextMenuFactory();
if (pClassFactory) {
hr = pClassFactory->QueryInterface(riid, ppv);
pClassFactory->Release();
}
}
return hr;
}
STDAPI DllCanUnloadNow(void)
{
return g_cDllRef > 0 ? S_FALSE : S_OK;
}
STDAPI DllRegisterServer(void)
{
HRESULT hr;
GUID guid;
hr = CLSIDFromString(CONTEXT_MENU_GUID, (LPCLSID)&guid);
if (!SUCCEEDED(hr)) {
return hr;
}
wchar_t szModule[MAX_PATH];
if (GetModuleFileName(g_hInst, szModule, ARRAYSIZE(szModule)) == 0) {
hr = HRESULT_FROM_WIN32(GetLastError());
return hr;
}
// Register the component.
hr = NCContextMenuRegHandler::RegisterInprocServer(szModule, guid,
CONTEXT_MENU_DESCRIPTION, L"Apartment");
if (SUCCEEDED(hr)) {
// Register the context menu handler. The context menu handler is
// associated with the .cpp file class.
hr = NCContextMenuRegHandler::RegisterShellExtContextMenuHandler(L"AllFileSystemObjects", guid, CONTEXT_MENU_REGKEY_NAME);
}
return hr;
}
STDAPI DllUnregisterServer(void)
{
HRESULT hr = S_OK;
GUID guid;
hr = CLSIDFromString(CONTEXT_MENU_GUID, (LPCLSID)&guid);
if (!SUCCEEDED(hr)) {
return hr;
}
wchar_t szModule[MAX_PATH];
if (GetModuleFileName(g_hInst, szModule, ARRAYSIZE(szModule)) == 0) {
hr = HRESULT_FROM_WIN32(GetLastError());
return hr;
}
// Unregister the component.
hr = NCContextMenuRegHandler::UnregisterInprocServer(guid);
if (SUCCEEDED(hr)) {
// Unregister the context menu handler.
hr = NCContextMenuRegHandler::UnregisterShellExtContextMenuHandler(L"AllFileSystemObjects", CONTEXT_MENU_REGKEY_NAME);
}
return hr;
}

View File

@@ -1,6 +1,6 @@
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
// Used by OCContextMenu.rc
// Used by NCContextMenu.rc
// Next default values for new objects
//

View File

@@ -0,0 +1,16 @@
add_library(NCOverlays MODULE
DllMain.cpp
NCOverlay.cpp
NCOverlayFactory.cpp
NCOverlayRegistrationHandler.cpp
NCOverlay.rc
NCOverlays.def
)
target_link_libraries(NCOverlays
NCUtil)
install(TARGETS NCOverlays
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_BINDIR}
)

View File

@@ -12,10 +12,9 @@
* details.
*/
#include "stdafx.h"
#include "OCOverlayRegistrationHandler.h"
#include "OCOverlayFactory.h"
#include "NCOverlayRegistrationHandler.h"
#include "NCOverlayFactory.h"
#include "WinShellExtConstants.h"
HINSTANCE instanceHandle = nullptr;
@@ -42,11 +41,11 @@ HRESULT CreateFactory(REFIID riid, void **ppv, int state)
{
HRESULT hResult = E_OUTOFMEMORY;
OCOverlayFactory* ocOverlayFactory = new OCOverlayFactory(state);
NCOverlayFactory* ncOverlayFactory = new NCOverlayFactory(state);
if (ocOverlayFactory) {
hResult = ocOverlayFactory->QueryInterface(riid, ppv);
ocOverlayFactory->Release();
if (ncOverlayFactory) {
hResult = ncOverlayFactory->QueryInterface(riid, ppv);
ncOverlayFactory->Release();
}
return hResult;
}
@@ -95,13 +94,13 @@ HRESULT RegisterCLSID(LPCOLESTR guidStr, PCWSTR overlayStr, PCWSTR szModule)
return hResult;
}
hResult = OCOverlayRegistrationHandler::RegisterCOMObject(szModule, OVERLAY_GENERIC_NAME, guid);
hResult = NCOverlayRegistrationHandler::RegisterCOMObject(szModule, OVERLAY_DESCRIPTION, guid);
if (!SUCCEEDED(hResult)) {
return hResult;
}
hResult = OCOverlayRegistrationHandler::MakeRegistryEntries(guid, overlayStr);
hResult = NCOverlayRegistrationHandler::MakeRegistryEntries(guid, overlayStr);
return hResult;
}
@@ -117,13 +116,13 @@ HRESULT UnregisterCLSID(LPCOLESTR guidStr, PCWSTR overlayStr)
return hResult;
}
hResult = OCOverlayRegistrationHandler::UnregisterCOMObject(guid);
hResult = NCOverlayRegistrationHandler::UnregisterCOMObject(guid);
if (!SUCCEEDED(hResult)) {
return hResult;
}
hResult = OCOverlayRegistrationHandler::RemoveRegistryEntries(overlayStr);
hResult = NCOverlayRegistrationHandler::RemoveRegistryEntries(overlayStr);
return hResult;
}
@@ -139,13 +138,6 @@ HRESULT _stdcall DllRegisterServer(void)
return hResult;
}
// Unregister any obsolete CLSID when we register here
// Those CLSID were removed in 2.1, but we need to make sure to prevent any previous version
// of the extension on the system from loading at the same time as a new version to avoid crashing explorer.
UnregisterCLSID(OVERLAY_GUID_ERROR_SHARED, OVERLAY_NAME_ERROR_SHARED);
UnregisterCLSID(OVERLAY_GUID_SYNC_SHARED, OVERLAY_NAME_SYNC_SHARED);
UnregisterCLSID(OVERLAY_GUID_WARNING_SHARED, OVERLAY_NAME_WARNING_SHARED);
hResult = RegisterCLSID(OVERLAY_GUID_ERROR, OVERLAY_NAME_ERROR, szModule);
if (!SUCCEEDED(hResult)) { return hResult; }
hResult = RegisterCLSID(OVERLAY_GUID_OK, OVERLAY_NAME_OK, szModule);

View File

@@ -12,19 +12,11 @@
* details.
*/
#include "stdafx.h"
#include "OCOverlay.h"
#include "OCOverlayFactory.h"
#include "RegistryUtil.h"
#include "NCOverlay.h"
#include "NCOverlayFactory.h"
#include "StringUtil.h"
#include "UtilConstants.h"
#include "RemotePathChecker.h"
#include "resource.h"
#include <algorithm>
#include <iostream>
#include <fstream>
@@ -55,23 +47,23 @@ RemotePathChecker *getGlobalChecker()
}
}
OCOverlay::OCOverlay(int state)
NCOverlay::NCOverlay(int state)
: _referenceCount(1)
, _state(state)
{
}
OCOverlay::~OCOverlay(void)
NCOverlay::~NCOverlay(void)
{
}
IFACEMETHODIMP_(ULONG) OCOverlay::AddRef()
IFACEMETHODIMP_(ULONG) NCOverlay::AddRef()
{
return InterlockedIncrement(&_referenceCount);
}
IFACEMETHODIMP OCOverlay::QueryInterface(REFIID riid, void **ppv)
IFACEMETHODIMP NCOverlay::QueryInterface(REFIID riid, void **ppv)
{
HRESULT hr = S_OK;
@@ -93,7 +85,7 @@ IFACEMETHODIMP OCOverlay::QueryInterface(REFIID riid, void **ppv)
return hr;
}
IFACEMETHODIMP_(ULONG) OCOverlay::Release()
IFACEMETHODIMP_(ULONG) NCOverlay::Release()
{
ULONG cRef = InterlockedDecrement(&_referenceCount);
if (0 == cRef)
@@ -104,7 +96,7 @@ IFACEMETHODIMP_(ULONG) OCOverlay::Release()
return cRef;
}
IFACEMETHODIMP OCOverlay::GetPriority(int *pPriority)
IFACEMETHODIMP NCOverlay::GetPriority(int *pPriority)
{
// this defines which handler has prededence, so
// we order this in terms of likelyhood
@@ -126,7 +118,7 @@ IFACEMETHODIMP OCOverlay::GetPriority(int *pPriority)
return S_OK;
}
IFACEMETHODIMP OCOverlay::IsMemberOf(PCWSTR pwszPath, DWORD dwAttrib)
IFACEMETHODIMP NCOverlay::IsMemberOf(PCWSTR pwszPath, DWORD dwAttrib)
{
RemotePathChecker* checker = getGlobalChecker();
std::shared_ptr<const std::vector<std::wstring>> watchedDirectories = checker->WatchedDirectories();
@@ -154,7 +146,7 @@ IFACEMETHODIMP OCOverlay::IsMemberOf(PCWSTR pwszPath, DWORD dwAttrib)
return MAKE_HRESULT(state == _state ? S_OK : S_FALSE, 0, 0);
}
IFACEMETHODIMP OCOverlay::GetOverlayInfo(PWSTR pwszIconFile, int cchMax, int *pIndex, DWORD *pdwFlags)
IFACEMETHODIMP NCOverlay::GetOverlayInfo(PWSTR pwszIconFile, int cchMax, int *pIndex, DWORD *pdwFlags)
{
*pIndex = 0;
*pdwFlags = ISIOI_ICONFILE | ISIOI_ICONINDEX;

View File

@@ -12,16 +12,18 @@
* details.
*/
#ifndef OCOVERLAY_H
#define OCOVERLAY_H
#ifndef NCOVERLAY_H
#define NCOVERLAY_H
#pragma once
class OCOverlay : public IShellIconOverlayIdentifier
#include <shlobj.h>
class NCOverlay : public IShellIconOverlayIdentifier
{
public:
OCOverlay(int state);
NCOverlay(int state);
IFACEMETHODIMP_(ULONG) AddRef();
IFACEMETHODIMP GetOverlayInfo(PWSTR pwszIconFile, int cchMax, int *pIndex, DWORD *pdwFlags);
@@ -31,7 +33,7 @@ public:
IFACEMETHODIMP_(ULONG) Release();
protected:
~OCOverlay();
~NCOverlay();
private:
long _referenceCount;

View File

@@ -12,25 +12,26 @@
* details.
*/
#include "stdafx.h"
#include <windows.h>
#include <new>
#include "OCOverlayFactory.h"
#include "OCOverlay.h"
#include "NCOverlayFactory.h"
#include "NCOverlay.h"
extern long dllReferenceCount;
OCOverlayFactory::OCOverlayFactory(int state)
NCOverlayFactory::NCOverlayFactory(int state)
: _referenceCount(1), _state(state)
{
InterlockedIncrement(&dllReferenceCount);
}
OCOverlayFactory::~OCOverlayFactory()
NCOverlayFactory::~NCOverlayFactory()
{
InterlockedDecrement(&dllReferenceCount);
}
IFACEMETHODIMP OCOverlayFactory::QueryInterface(REFIID riid, void **ppv)
IFACEMETHODIMP NCOverlayFactory::QueryInterface(REFIID riid, void **ppv)
{
HRESULT hResult = S_OK;
@@ -49,12 +50,12 @@ IFACEMETHODIMP OCOverlayFactory::QueryInterface(REFIID riid, void **ppv)
return hResult;
}
IFACEMETHODIMP_(ULONG) OCOverlayFactory::AddRef()
IFACEMETHODIMP_(ULONG) NCOverlayFactory::AddRef()
{
return InterlockedIncrement(&_referenceCount);
}
IFACEMETHODIMP_(ULONG) OCOverlayFactory::Release()
IFACEMETHODIMP_(ULONG) NCOverlayFactory::Release()
{
ULONG cRef = InterlockedDecrement(&_referenceCount);
@@ -65,7 +66,7 @@ IFACEMETHODIMP_(ULONG) OCOverlayFactory::Release()
return cRef;
}
IFACEMETHODIMP OCOverlayFactory::CreateInstance(
IFACEMETHODIMP NCOverlayFactory::CreateInstance(
IUnknown *pUnkOuter, REFIID riid, void **ppv)
{
HRESULT hResult = CLASS_E_NOAGGREGATION;
@@ -73,7 +74,7 @@ IFACEMETHODIMP OCOverlayFactory::CreateInstance(
if (pUnkOuter) { return hResult; }
hResult = E_OUTOFMEMORY;
OCOverlay *lrOverlay = new (std::nothrow) OCOverlay(_state);
NCOverlay *lrOverlay = new (std::nothrow) NCOverlay(_state);
if (!lrOverlay) { return hResult; }
hResult = lrOverlay->QueryInterface(riid, ppv);
@@ -82,7 +83,7 @@ IFACEMETHODIMP OCOverlayFactory::CreateInstance(
return hResult;
}
IFACEMETHODIMP OCOverlayFactory::LockServer(BOOL fLock)
IFACEMETHODIMP NCOverlayFactory::LockServer(BOOL fLock)
{
if (fLock) {
InterlockedIncrement(&dllReferenceCount);

View File

@@ -12,11 +12,13 @@
* details.
*/
#ifndef OCOVERLAYFACTORY_H
#define OCOVERLAYFACTORY_H
#ifndef NCOVERLAYFACTORY_H
#define NCOVERLAYFACTORY_H
#pragma once
#include <unknwn.h>
enum State {
State_Error = 0,
State_OK, State_OKShared,
@@ -24,10 +26,10 @@ enum State {
State_Warning
};
class OCOverlayFactory : public IClassFactory
class NCOverlayFactory : public IClassFactory
{
public:
OCOverlayFactory(int state);
NCOverlayFactory(int state);
IFACEMETHODIMP_(ULONG) AddRef();
IFACEMETHODIMP CreateInstance(IUnknown *pUnkOuter, REFIID riid, void **ppv);
@@ -36,7 +38,7 @@ public:
IFACEMETHODIMP_(ULONG) Release();
protected:
~OCOverlayFactory();
~NCOverlayFactory();
private:
long _referenceCount;

View File

@@ -12,16 +12,24 @@
* details.
*/
#include "stdafx.h"
#include "OCOverlayRegistrationHandler.h"
#include "NCOverlayRegistrationHandler.h"
#include <windows.h>
#include <objbase.h>
#include <iostream>
#include <fstream>
#define REGISTRY_OVERLAY_KEY LR"(SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers)"
#define REGISTRY_CLSID L"CLSID"
#define REGISTRY_IN_PROCESS L"InprocServer32"
#define REGISTRY_THREADING L"ThreadingModel"
#define REGISTRY_APARTMENT L"Apartment"
#define REGISTRY_VERSION L"Version"
#define REGISTRY_VERSION_NUMBER L"1.0"
using namespace std;
HRESULT OCOverlayRegistrationHandler::MakeRegistryEntries(const CLSID& clsid, PCWSTR friendlyName)
HRESULT NCOverlayRegistrationHandler::MakeRegistryEntries(const CLSID& clsid, PCWSTR friendlyName)
{
HRESULT hResult;
HKEY shellOverlayKey = nullptr;
@@ -52,7 +60,7 @@ HRESULT OCOverlayRegistrationHandler::MakeRegistryEntries(const CLSID& clsid, PC
return hResult;
}
HRESULT OCOverlayRegistrationHandler::RemoveRegistryEntries(PCWSTR friendlyName)
HRESULT NCOverlayRegistrationHandler::RemoveRegistryEntries(PCWSTR friendlyName)
{
HRESULT hResult;
HKEY shellOverlayKey = nullptr;
@@ -71,7 +79,7 @@ HRESULT OCOverlayRegistrationHandler::RemoveRegistryEntries(PCWSTR friendlyName)
return hResult;
}
HRESULT OCOverlayRegistrationHandler::RegisterCOMObject(PCWSTR modulePath, PCWSTR friendlyName, const CLSID& clsid)
HRESULT NCOverlayRegistrationHandler::RegisterCOMObject(PCWSTR modulePath, PCWSTR friendlyName, const CLSID& clsid)
{
if (!modulePath) {
return E_FAIL;
@@ -89,7 +97,7 @@ HRESULT OCOverlayRegistrationHandler::RegisterCOMObject(PCWSTR modulePath, PCWST
HKEY clsidKey = nullptr;
hResult = HRESULT_FROM_WIN32(RegCreateKeyEx(hKey, stringCLSID, 0, nullptr, REG_OPTION_NON_VOLATILE, KEY_WRITE, nullptr, &clsidKey, nullptr));
if(!SUCCEEDED(hResult)) {
if (!SUCCEEDED(hResult)) {
return hResult;
}
@@ -97,30 +105,36 @@ HRESULT OCOverlayRegistrationHandler::RegisterCOMObject(PCWSTR modulePath, PCWST
HKEY inprocessKey = nullptr;
hResult = HRESULT_FROM_WIN32(RegCreateKeyEx(clsidKey, REGISTRY_IN_PROCESS, 0, nullptr, REG_OPTION_NON_VOLATILE, KEY_WRITE, nullptr, &inprocessKey, nullptr));
if(!SUCCEEDED(hResult)) {
if (!SUCCEEDED(hResult)) {
return hResult;
}
hResult = HRESULT_FROM_WIN32(RegSetValue(inprocessKey, nullptr, REG_SZ, modulePath, (DWORD) wcslen(modulePath)));
if(!SUCCEEDED(hResult)) {
if (!SUCCEEDED(hResult)) {
return hResult;
}
hResult = HRESULT_FROM_WIN32(RegSetValueEx(inprocessKey, REGISTRY_THREADING, 0, REG_SZ, (LPBYTE)REGISTRY_APARTMENT, (DWORD)((wcslen(REGISTRY_APARTMENT)+1) * sizeof(TCHAR))));
if(!SUCCEEDED(hResult)) {
if (!SUCCEEDED(hResult)) {
return hResult;
}
hResult = HRESULT_FROM_WIN32(RegSetValueEx(inprocessKey, REGISTRY_VERSION, 0, REG_SZ, (LPBYTE)REGISTRY_VERSION_NUMBER, (DWORD)(wcslen(REGISTRY_VERSION_NUMBER)+1) * sizeof(TCHAR)));
if(!SUCCEEDED(hResult)) {
HKEY versionKey = nullptr;
hResult = HRESULT_FROM_WIN32(RegCreateKeyEx(clsidKey, REGISTRY_VERSION, 0, nullptr, REG_OPTION_NON_VOLATILE, KEY_WRITE, nullptr, &versionKey, nullptr));
if (!SUCCEEDED(hResult)) {
return hResult;
}
hResult = HRESULT_FROM_WIN32(RegSetValueEx(versionKey, nullptr, 0, REG_SZ, (LPBYTE)REGISTRY_VERSION_NUMBER, (DWORD)(wcslen(REGISTRY_VERSION_NUMBER)+1) * sizeof(TCHAR)));
if (!SUCCEEDED(hResult)) {
return hResult;
}
return S_OK;
}
HRESULT OCOverlayRegistrationHandler::UnregisterCOMObject(const CLSID& clsid)
HRESULT NCOverlayRegistrationHandler::UnregisterCOMObject(const CLSID& clsid)
{
wchar_t stringCLSID[MAX_PATH];
@@ -134,17 +148,22 @@ HRESULT OCOverlayRegistrationHandler::UnregisterCOMObject(const CLSID& clsid)
HKEY clsidKey = nullptr;
hResult = HRESULT_FROM_WIN32(RegOpenKeyEx(hKey, stringCLSID, 0, DELETE, &clsidKey));
if(!SUCCEEDED(hResult)) {
if (!SUCCEEDED(hResult)) {
return hResult;
}
hResult = HRESULT_FROM_WIN32(RegDeleteKey(clsidKey, REGISTRY_IN_PROCESS));
if(!SUCCEEDED(hResult)) {
if (!SUCCEEDED(hResult)) {
return hResult;
}
hResult = HRESULT_FROM_WIN32(RegDeleteKey(clsidKey, REGISTRY_VERSION));
if (!SUCCEEDED(hResult)) {
return hResult;
}
hResult = HRESULT_FROM_WIN32(RegDeleteKey(hKey, stringCLSID));
if(!SUCCEEDED(hResult)) {
if (!SUCCEEDED(hResult)) {
return hResult;
}

View File

@@ -12,12 +12,14 @@
* details.
*/
#ifndef OCOVERLAYREGISTRATIONHANDLER_H
#define OCOVERLAYREGISTRATIONHANDLER_H
#ifndef NCOVERLAYREGISTRATIONHANDLER_H
#define NCOVERLAYREGISTRATIONHANDLER_H
#pragma once
class __declspec(dllexport) OCOverlayRegistrationHandler
#include <windows.h>
class __declspec(dllexport) NCOverlayRegistrationHandler
{
public:
static HRESULT MakeRegistryEntries(const CLSID& clsid, PCWSTR fileType);

View File

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

View File

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View File

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

View File

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View File

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

View File

@@ -0,0 +1,11 @@
add_library(NCUtil STATIC
CommunicationSocket.cpp
RemotePathChecker.cpp
StringUtil.cpp
NCUtil.rc
)
target_include_directories(NCUtil
PUBLIC
"${CMAKE_CURRENT_SOURCE_DIR}"
)

View File

@@ -12,11 +12,9 @@
* details.
*/
#include "stdafx.h"
#include "CommunicationSocket.h"
#include "UtilConstants.h"
#include "StringUtil.h"
#include "WinShellExtConstants.h"
#include <iostream>
#include <vector>
@@ -44,8 +42,9 @@ std::wstring getUserName() {
std::wstring CommunicationSocket::DefaultPipePath()
{
auto pipename = std::wstring(L"\\\\.\\pipe\\");
pipename += L"ownCloud-";
auto pipename = std::wstring(LR"(\\.\pipe\)");
pipename += std::wstring(UTIL_PIPE_APP_NAME);
pipename += L"-";
pipename += getUserName();
return pipename;
}

Binary file not shown.

View File

@@ -11,8 +11,6 @@
* details.
*/
#include "stdafx.h"
#include "CommunicationSocket.h"
#include "RemotePathChecker.h"

View File

@@ -29,7 +29,7 @@
class __declspec(dllexport) RemotePathChecker {
public:
enum FileState {
// Order synced with OCOverlay
// Order synced with NCOverlay
StateError = 0,
StateOk, StateOkSWM,
StateSync,
@@ -53,7 +53,7 @@ private:
std::queue<std::wstring> _pending;
std::unordered_map<std::wstring, FileState> _cache;
// The vector is const since it will be accessed from multiple threads through OCOverlay::IsMemberOf.
// The vector is const since it will be accessed from multiple threads through NCOverlay::IsMemberOf.
// Each modification needs to be made onto a copy and then atomically replaced in the shared_ptr.
std::shared_ptr<const std::vector<std::wstring>> _watchedDirectories;
bool _connected;

View File

@@ -11,8 +11,6 @@
* details.
*/
#include "stdafx.h"
#include <locale>
#include <string>
#include <codecvt>

View File

@@ -16,6 +16,7 @@
#pragma once
#include <windows.h>
#include <string>
#include <cassert>

View File

@@ -2,10 +2,10 @@
// This is the number that will end up in the version window of the DLLs.
// Increment this version before committing a new build if you are today's shell_integration build master.
#define OCEXT_BUILD_NUM 46
#define NCEXT_BUILD_NUM 47
#define STRINGIZE2(s) #s
#define STRINGIZE(s) STRINGIZE2(s)
#define OCEXT_VERSION 1,0,0,OCEXT_BUILD_NUM
#define OCEXT_VERSION_STRING STRINGIZE(OCEXT_VERSION)
#define NCEXT_VERSION 3,0,0,NCEXT_BUILD_NUM
#define NCEXT_VERSION_STRING STRINGIZE(NCEXT_VERSION)

View File

@@ -0,0 +1,14 @@
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
// Used by NCContextMenu.rc
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 101
#define _APS_NEXT_COMMAND_VALUE 40001
#define _APS_NEXT_CONTROL_VALUE 1001
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif

View File

@@ -1,18 +0,0 @@
add_library(OCContextMenu MODULE
dllmain.cpp
OCClientInterface.cpp
OCContextMenu.cpp
OCContextMenuFactory.cpp
OCContextMenuRegHandler.cpp
stdafx.cpp
OCContextMenu.rc
OCContextMenu.def
)
target_link_libraries(OCContextMenu
OCUtil)
install(TARGETS OCContextMenu
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_BINDIR}
)

View File

@@ -1,196 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{FF34851F-1346-4809-A68A-B1188D7DFF32}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>OCContextMenu</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v120_xp</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v120_xp</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<PlatformToolset>v120_xp</PlatformToolset>
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
<OutDir>$(SolutionDir)..\..\binary\shell_integration\windows\$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
<OutDir>$(SolutionDir)..\..\binary\shell_integration\windows\$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\</IntDir>
<TargetName>$(ProjectName)_x86</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(SolutionDir)..\..\binary\shell_integration\windows\$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\</IntDir>
<TargetName>$(ProjectName)_x64</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(SolutionDir)..\..\binary\shell_integration\windows\$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\</IntDir>
<TargetName>$(ProjectName)_x64</TargetName>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>Use</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<SDLCheck>true</SDLCheck>
<AdditionalIncludeDirectories>..\OCUtil;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>$(OutDir)</AdditionalLibraryDirectories>
<AdditionalDependencies>OCUtil_x86.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>OCContextMenu.def</ModuleDefinitionFile>
</Link>
<ResourceCompile>
<AdditionalIncludeDirectories>..\OCUtil</AdditionalIncludeDirectories>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PrecompiledHeader>Use</PrecompiledHeader>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>..\OCUtil;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_USING_V110_SDK71_;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalLibraryDirectories>$(OutDir)</AdditionalLibraryDirectories>
<AdditionalDependencies>OCUtil_x86.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>OCContextMenu.def</ModuleDefinitionFile>
</Link>
<ResourceCompile>
<AdditionalIncludeDirectories>..\OCUtil</AdditionalIncludeDirectories>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Link>
<AdditionalLibraryDirectories>$(OutDir)</AdditionalLibraryDirectories>
<ModuleDefinitionFile>OCContextMenu.def</ModuleDefinitionFile>
<AdditionalDependencies>OCUtil_x64.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<ClCompile>
<AdditionalIncludeDirectories>..\OCUtil;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PrecompiledHeader />
</ClCompile>
<ResourceCompile>
<AdditionalIncludeDirectories>..\OCUtil</AdditionalIncludeDirectories>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<AdditionalIncludeDirectories>..\OCUtil;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_USING_V110_SDK71_;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<AdditionalLibraryDirectories>$(OutDir)</AdditionalLibraryDirectories>
<AdditionalDependencies>OCUtil_x64.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>OCContextMenu.def</ModuleDefinitionFile>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<ResourceCompile>
<AdditionalIncludeDirectories>..\OCUtil</AdditionalIncludeDirectories>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemGroup>
<Text Include="ReadMe.txt" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="OCClientInterface.h" />
<ClInclude Include="OCContextMenuFactory.h" />
<ClInclude Include="OCContextMenuRegHandler.h" />
<ClInclude Include="OCContextMenu.h" />
<ClInclude Include="RegDelnode.h" />
<ClInclude Include="resource.h" />
<ClInclude Include="stdafx.h" />
<ClInclude Include="targetver.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="dllmain.cpp">
<CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</CompileAsManaged>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
</PrecompiledHeader>
<CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</CompileAsManaged>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
</PrecompiledHeader>
</ClCompile>
<ClCompile Include="OCClientInterface.cpp" />
<ClCompile Include="OCContextMenu.cpp" />
<ClCompile Include="OCContextMenuRegHandler.cpp" />
<ClCompile Include="OCContextMenuFactory.cpp" />
<ClCompile Include="stdafx.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
</ClCompile>
</ItemGroup>
<ItemGroup>
<None Include="OCContextMenu.def" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="OCContextMenu.rc" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@@ -1,68 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<Text Include="ReadMe.txt" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="stdafx.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="targetver.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="OCContextMenu.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="OCContextMenuRegHandler.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="OCContextMenuFactory.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="OCClientInterface.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="RegDelnode.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="stdafx.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="OCContextMenu.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="dllmain.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="OCContextMenuRegHandler.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="OCContextMenuFactory.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="OCClientInterface.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<None Include="OCContextMenu.def">
<Filter>Source Files</Filter>
</None>
</ItemGroup>
</Project>

View File

@@ -1,108 +0,0 @@
/**
* Copyright (c) 2015 Daniel Molkentin <danimo@owncloud.com>. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
#include "stdafx.h"
#include <windows.h>
#include <Guiddef.h>
#include "OCContextMenuRegHandler.h"
#include "OCContextMenuFactory.h"
// {841A0AAD-AA11-4B50-84D9-7F8E727D77D7}
static const GUID CLSID_FileContextMenuExt = { 0x841a0aad, 0xaa11, 0x4b50, { 0x84, 0xd9, 0x7f, 0x8e, 0x72, 0x7d, 0x77, 0xd7 } };
HINSTANCE g_hInst = nullptr;
long g_cDllRef = 0;
BOOL APIENTRY DllMain(HMODULE hModule, DWORD dwReason, LPVOID lpReserved)
{
switch (dwReason)
{
case DLL_PROCESS_ATTACH:
// Hold the instance of this DLL module, we will use it to get the
// path of the DLL to register the component.
g_hInst = hModule;
DisableThreadLibraryCalls(hModule);
break;
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
STDAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, void **ppv)
{
HRESULT hr = CLASS_E_CLASSNOTAVAILABLE;
if (IsEqualCLSID(CLSID_FileContextMenuExt, rclsid)) {
hr = E_OUTOFMEMORY;
OCContextMenuFactory *pClassFactory = new OCContextMenuFactory();
if (pClassFactory) {
hr = pClassFactory->QueryInterface(riid, ppv);
pClassFactory->Release();
}
}
return hr;
}
STDAPI DllCanUnloadNow(void)
{
return g_cDllRef > 0 ? S_FALSE : S_OK;
}
STDAPI DllRegisterServer(void)
{
HRESULT hr;
wchar_t szModule[MAX_PATH];
if (GetModuleFileName(g_hInst, szModule, ARRAYSIZE(szModule)) == 0) {
hr = HRESULT_FROM_WIN32(GetLastError());
return hr;
}
// Register the component.
hr = OCContextMenuRegHandler::RegisterInprocServer(szModule, CLSID_FileContextMenuExt,
L"OCContextMenuHandler Class", L"Apartment");
if (SUCCEEDED(hr)) {
// Register the context menu handler. The context menu handler is
// associated with the .cpp file class.
hr = OCContextMenuRegHandler::RegisterShellExtContextMenuHandler(L"AllFileSystemObjects", CLSID_FileContextMenuExt, L"OCContextMenuHandler");
}
return hr;
}
STDAPI DllUnregisterServer(void)
{
HRESULT hr = S_OK;
wchar_t szModule[MAX_PATH];
if (GetModuleFileName(g_hInst, szModule, ARRAYSIZE(szModule)) == 0) {
hr = HRESULT_FROM_WIN32(GetLastError());
return hr;
}
// Unregister the component.
hr = OCContextMenuRegHandler::UnregisterInprocServer(CLSID_FileContextMenuExt);
if (SUCCEEDED(hr)) {
// Unregister the context menu handler.
hr = OCContextMenuRegHandler::UnregisterShellExtContextMenuHandler(L"AllFileSystemObjects", L"OCContextMenuHandler");
}
return hr;
}

View File

@@ -1,8 +0,0 @@
// stdafx.cpp : source file that includes just the standard includes
// OCContextMenu.pch will be the pre-compiled header
// stdafx.obj will contain the pre-compiled type information
#include "stdafx.h"
// TODO: reference any additional headers you need in STDAFX.H
// and not in this file

View File

@@ -1,17 +0,0 @@
// stdafx.h : include file for standard system include files,
// or project specific include files that are used frequently, but
// are changed infrequently
//
#pragma once
#include "targetver.h"
#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
// Windows Header Files:
#include <windows.h>
#include <memory>
#include <strsafe.h>
// TODO: reference additional headers your program requires here

View File

@@ -1,12 +0,0 @@
#pragma once
// Including SDKDDKVer.h defines the highest available Windows platform.
// If you wish to build your application for a previous Windows platform, include WinSDKVer.h and
// set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h.
// Note: Here was a #define for windows target version
// e.g. WINVER / _WIN32_WINNT, see https://devblogs.microsoft.com/oldnewthing/20070411-00/?p=27283
// Unnecessary because we define both in desktop/CMakeLists.txt
#include <SDKDDKVer.h>

View File

@@ -1,17 +0,0 @@
add_library(OCOverlays MODULE
DllMain.cpp
OCOverlay.cpp
OCOverlayFactory.cpp
OCOverlayRegistrationHandler.cpp
stdafx.cpp
OCOverlay.rc
OCOverlays.def
)
target_link_libraries(OCOverlays
OCUtil)
install(TARGETS OCOverlays
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_BINDIR}
)

View File

@@ -1,208 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{42EFEC79-5ACA-4F76-955F-15CE4340F6BC}</ProjectGuid>
<RootNamespace>OCOverlays</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)..\..\binary\shell_integration\windows\$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\</IntDir>
<TargetName>$(ProjectName)_x86</TargetName>
<TargetExt>.dll</TargetExt>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(SolutionDir)..\..\binary\shell_integration\windows\$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\</IntDir>
<TargetName>$(ProjectName)_x64</TargetName>
<TargetExt>.dll</TargetExt>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)..\..\binary\shell_integration\windows\$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\</IntDir>
<TargetName>$(ProjectName)_x86</TargetName>
<TargetExt>.dll</TargetExt>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(SolutionDir)..\..\binary\shell_integration\windows\$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\</IntDir>
<TargetName>$(ProjectName)_x64</TargetName>
<TargetExt>.dll</TargetExt>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\OCUtil;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<SuppressStartupBanner>false</SuppressStartupBanner>
<PrecompiledHeader>Use</PrecompiledHeader>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>$(OutDir)</AdditionalLibraryDirectories>
<AdditionalDependencies>OCUtil_x86.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>OCOverlays.def</ModuleDefinitionFile>
<SubSystem>Windows</SubSystem>
</Link>
<ResourceCompile>
<AdditionalIncludeDirectories>..\OCUtil</AdditionalIncludeDirectories>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\OCUtil;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<SuppressStartupBanner>false</SuppressStartupBanner>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>$(OutDir)</AdditionalLibraryDirectories>
<AdditionalDependencies>OCUtil_x64.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>OCOverlays.def</ModuleDefinitionFile>
<SubSystem>Windows</SubSystem>
</Link>
<ResourceCompile>
<AdditionalIncludeDirectories>..\OCUtil</AdditionalIncludeDirectories>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>..\OCUtil;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_USING_V110_SDK71_;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalLibraryDirectories>$(OutDir)</AdditionalLibraryDirectories>
<AdditionalDependencies>OCUtil_x86.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>OCOverlays.def</ModuleDefinitionFile>
<SubSystem>Windows</SubSystem>
</Link>
<ResourceCompile>
<AdditionalIncludeDirectories>..\OCUtil</AdditionalIncludeDirectories>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>..\OCUtil;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_USING_V110_SDK71_;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalLibraryDirectories>$(OutDir)</AdditionalLibraryDirectories>
<AdditionalDependencies>OCUtil_x64.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>OCOverlays.def</ModuleDefinitionFile>
<SubSystem>Windows</SubSystem>
</Link>
<ResourceCompile>
<AdditionalIncludeDirectories>..\OCUtil</AdditionalIncludeDirectories>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="DllMain.cpp" />
<ClCompile Include="OCOverlay.cpp" />
<ClCompile Include="OCOverlayFactory.cpp" />
<ClCompile Include="OCOverlayRegistrationHandler.cpp" />
<ClCompile Include="stdafx.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="OCOverlay.h" />
<ClInclude Include="OCOverlayFactory.h" />
<ClInclude Include="OCOverlayRegistrationHandler.h" />
<ClInclude Include="OverlayConstants.h" />
<ClInclude Include="resource.h" />
<ClInclude Include="stdafx.h" />
</ItemGroup>
<ItemGroup>
<None Include="OCOverlays.def" />
<None Include="OverlayConstants.h.original" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="OCOverlay.rc" />
</ItemGroup>
<ItemGroup>
<Image Include="ico\Error.ico" />
<Image Include="ico\OK.ico" />
<Image Include="ico\OK_Shared.ico" />
<Image Include="ico\Sync.ico" />
<Image Include="ico\Warning.ico" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@@ -1,50 +0,0 @@
/**
* Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
#define OVERLAY_GUID_ERROR L"{0960F090-F328-48A3-B746-276B1E3C3722}"
#define OVERLAY_GUID_ERROR_SHARED L"{0960F091-F328-48A3-B746-276B1E3C3722}"
#define OVERLAY_GUID_OK L"{0960F092-F328-48A3-B746-276B1E3C3722}"
#define OVERLAY_GUID_OK_SHARED L"{0960F093-F328-48A3-B746-276B1E3C3722}"
#define OVERLAY_GUID_SYNC L"{0960F094-F328-48A3-B746-276B1E3C3722}"
#define OVERLAY_GUID_SYNC_SHARED L"{0960F095-F328-48A3-B746-276B1E3C3722}"
#define OVERLAY_GUID_WARNING L"{0960F096-F328-48A3-B746-276B1E3C3722}"
#define OVERLAY_GUID_WARNING_SHARED L"{0960F097-F328-48A3-B746-276B1E3C3722}"
#define OVERLAY_GENERIC_NAME L"ownCloud overlay handler"
// two spaces to put us ahead of the competition :/
#define OVERLAY_NAME_ERROR L" OCError"
#define OVERLAY_NAME_ERROR_SHARED L" OCErrorShared"
#define OVERLAY_NAME_OK L" OCOK"
#define OVERLAY_NAME_OK_SHARED L" OCOKShared"
#define OVERLAY_NAME_SYNC L" OCSync"
#define OVERLAY_NAME_SYNC_SHARED L" OCSyncShared"
#define OVERLAY_NAME_WARNING L" OCWarning"
#define OVERLAY_NAME_WARNING_SHARED L" OCWarningShared"
#define REGISTRY_OVERLAY_KEY L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\ShellIconOverlayIdentifiers"
#define REGISTRY_CLSID L"CLSID"
#define REGISTRY_IN_PROCESS L"InprocServer32"
#define REGISTRY_THREADING L"ThreadingModel"
#define REGISTRY_APARTMENT L"Apartment"
#define REGISTRY_VERSION L"Version"
#define REGISTRY_VERSION_NUMBER L"1.0"
//Registry values for running
#define REGISTRY_ENABLE_OVERLAY L"EnableOverlay"
#define GET_FILE_OVERLAY_ID L"getFileIconId"
#define PORT 34001

View File

@@ -1,32 +0,0 @@
/**
* Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
#define OVERLAY_ID [$overlay.id$]
#define OVERLAY_GUID L"[$overlay.guid$]"
#define OVERLAY_NAME L"[$overlay.name$]"
#define REGISTRY_OVERLAY_KEY L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\ShellIconOverlayIdentifiers"
#define REGISTRY_CLSID L"CLSID"
#define REGISTRY_IN_PROCESS L"InprocServer32"
#define REGISTRY_THREADING L"ThreadingModel"
#define REGISTRY_APARTMENT L"Apartment"
#define REGISTRY_VERSION L"Version"
#define REGISTRY_VERSION_NUMBER L"1.0"
//Registry values for running
#define REGISTRY_ENABLE_OVERLAY L"EnableOverlay"
#define GET_FILE_OVERLAY_ID L"getFileIconId"
#define PORT 33001

View File

@@ -1 +0,0 @@
#include "stdafx.h"

View File

@@ -1,34 +0,0 @@
/**
* Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
#define WIN32_LEAN_AND_MEAN
// Note: Here was a #define for windows target version
// e.g. WINVER / _WIN32_WINNT, see https://devblogs.microsoft.com/oldnewthing/20070411-00/?p=27283
// Unnecessary because we define both in desktop/CMakeLists.txt
#include "CommunicationSocket.h"
#include "RegistryUtil.h"
#include "OverlayConstants.h"
#include "FileUtil.h"
#include <string>
#include <new>
#include <Guiddef.h>
#include <windows.h>
#include <Shlwapi.h>
#include <shlobj.h>
#include <unknwn.h>
#include <vector>
#include <strsafe.h>

View File

@@ -1,54 +0,0 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.31101.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OCOverlays", "OCOverlays\OCOverlays.vcxproj", "{42EFEC79-5ACA-4F76-955F-15CE4340F6BC}"
ProjectSection(ProjectDependencies) = postProject
{E4F63E19-808D-4234-8DF0-69C5F47C9CD3} = {E4F63E19-808D-4234-8DF0-69C5F47C9CD3}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OCUtil", "OCUtil\OCUtil.vcxproj", "{E4F63E19-808D-4234-8DF0-69C5F47C9CD3}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OCContextMenu", "OCContextMenu\OCContextMenu.vcxproj", "{FF34851F-1346-4809-A68A-B1188D7DFF32}"
ProjectSection(ProjectDependencies) = postProject
{E4F63E19-808D-4234-8DF0-69C5F47C9CD3} = {E4F63E19-808D-4234-8DF0-69C5F47C9CD3}
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{42EFEC79-5ACA-4F76-955F-15CE4340F6BC}.Debug|Win32.ActiveCfg = Debug|Win32
{42EFEC79-5ACA-4F76-955F-15CE4340F6BC}.Debug|Win32.Build.0 = Debug|Win32
{42EFEC79-5ACA-4F76-955F-15CE4340F6BC}.Debug|x64.ActiveCfg = Debug|x64
{42EFEC79-5ACA-4F76-955F-15CE4340F6BC}.Debug|x64.Build.0 = Debug|x64
{42EFEC79-5ACA-4F76-955F-15CE4340F6BC}.Release|Win32.ActiveCfg = Release|Win32
{42EFEC79-5ACA-4F76-955F-15CE4340F6BC}.Release|Win32.Build.0 = Release|Win32
{42EFEC79-5ACA-4F76-955F-15CE4340F6BC}.Release|x64.ActiveCfg = Release|x64
{42EFEC79-5ACA-4F76-955F-15CE4340F6BC}.Release|x64.Build.0 = Release|x64
{E4F63E19-808D-4234-8DF0-69C5F47C9CD3}.Debug|Win32.ActiveCfg = Debug|Win32
{E4F63E19-808D-4234-8DF0-69C5F47C9CD3}.Debug|Win32.Build.0 = Debug|Win32
{E4F63E19-808D-4234-8DF0-69C5F47C9CD3}.Debug|x64.ActiveCfg = Debug|x64
{E4F63E19-808D-4234-8DF0-69C5F47C9CD3}.Debug|x64.Build.0 = Debug|x64
{E4F63E19-808D-4234-8DF0-69C5F47C9CD3}.Release|Win32.ActiveCfg = Release|Win32
{E4F63E19-808D-4234-8DF0-69C5F47C9CD3}.Release|Win32.Build.0 = Release|Win32
{E4F63E19-808D-4234-8DF0-69C5F47C9CD3}.Release|x64.ActiveCfg = Release|x64
{E4F63E19-808D-4234-8DF0-69C5F47C9CD3}.Release|x64.Build.0 = Release|x64
{FF34851F-1346-4809-A68A-B1188D7DFF32}.Debug|Win32.ActiveCfg = Debug|Win32
{FF34851F-1346-4809-A68A-B1188D7DFF32}.Debug|Win32.Build.0 = Debug|Win32
{FF34851F-1346-4809-A68A-B1188D7DFF32}.Debug|x64.ActiveCfg = Debug|x64
{FF34851F-1346-4809-A68A-B1188D7DFF32}.Debug|x64.Build.0 = Debug|x64
{FF34851F-1346-4809-A68A-B1188D7DFF32}.Release|Win32.ActiveCfg = Release|Win32
{FF34851F-1346-4809-A68A-B1188D7DFF32}.Release|Win32.Build.0 = Release|Win32
{FF34851F-1346-4809-A68A-B1188D7DFF32}.Release|x64.ActiveCfg = Release|x64
{FF34851F-1346-4809-A68A-B1188D7DFF32}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -1,17 +0,0 @@
add_library(OCUtil SHARED
CommunicationSocket.cpp
FileUtil.cpp
RegistryUtil.cpp
RemotePathChecker.cpp
stdafx.cpp
StringUtil.cpp
)
target_include_directories(OCUtil
PUBLIC
"${CMAKE_CURRENT_SOURCE_DIR}"
)
install(TARGETS OCUtil
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)

View File

@@ -1,86 +0,0 @@
/**
* Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
#include "stdafx.h"
#include "FileUtil.h"
#include "RegistryUtil.h"
#include "UtilConstants.h"
using namespace std;
bool FileUtil::IsChildFile(const wchar_t* rootFolder, vector<wstring>* files)
{
for(vector<wstring>::iterator it = files->begin(); it != files->end(); it++)
{
wstring file = *it;
size_t found = file.find(rootFolder);
if(found != string::npos)
{
return true;
}
}
return false;
}
bool FileUtil::IsChildFile(const wchar_t* rootFolder, const wchar_t* file)
{
const wstring f(file);
size_t found = f.find(rootFolder);
if(found != string::npos)
{
return true;
}
return false;
}
bool FileUtil::IsChildFileOfRoot(std::vector<std::wstring>* files)
{
wstring* rootFolder = new wstring();
bool needed = false;
if(RegistryUtil::ReadRegistry(REGISTRY_ROOT_KEY, REGISTRY_FILTER_FOLDER, rootFolder))
{
if(IsChildFile(rootFolder->c_str(), files))
{
needed = true;
}
}
delete rootFolder;
return needed;
}
bool FileUtil::IsChildFileOfRoot(const wchar_t* filePath)
{
wstring* rootFolder = new wstring();
bool needed = false;
if(RegistryUtil::ReadRegistry(REGISTRY_ROOT_KEY, REGISTRY_FILTER_FOLDER, rootFolder))
{
if(FileUtil::IsChildFile(rootFolder->c_str(), filePath))
{
needed = true;
}
}
delete rootFolder;
return needed;
}

View File

@@ -1,40 +0,0 @@
/**
* Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
#ifndef FILEUTIL_H
#define FILEUTIL_H
#pragma once
#pragma warning (disable : 4251)
#include <string>
#include <vector>
class __declspec(dllexport) FileUtil
{
public:
FileUtil();
~FileUtil();
static bool IsChildFile(const wchar_t*, std::vector<std::wstring>*);
static bool IsChildFile(const wchar_t*, const wchar_t*);
static bool IsChildFileOfRoot(std::vector<std::wstring>*);
static bool IsChildFileOfRoot(const wchar_t*);
private:
};
#endif

View File

@@ -1,176 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{E4F63E19-808D-4234-8DF0-69C5F47C9CD3}</ProjectGuid>
<RootNamespace>OCUtil</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<TargetExt>.dll</TargetExt>
<OutDir>$(SolutionDir)..\..\binary\shell_integration\windows\$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\</IntDir>
<TargetName>$(ProjectName)_x86</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<TargetExt>.dll</TargetExt>
<OutDir>$(SolutionDir)..\..\binary\shell_integration\windows\$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\</IntDir>
<TargetName>$(ProjectName)_x64</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<TargetName>$(ProjectName)_x64</TargetName>
<IntDir>$(Configuration)\$(Platform)\</IntDir>
<OutDir>$(SolutionDir)..\..\binary\shell_integration\windows\$(Configuration)\$(Platform)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<TargetExt>.dll</TargetExt>
<TargetName>$(ProjectName)_x86</TargetName>
<IntDir>$(Configuration)\$(Platform)\</IntDir>
<OutDir>$(SolutionDir)..\..\binary\shell_integration\windows\$(Configuration)\$(Platform)\</OutDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<ShowIncludes>false</ShowIncludes>
<PrecompiledHeader>Use</PrecompiledHeader>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<SubSystem>Windows</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PrecompiledHeader>Use</PrecompiledHeader>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<SubSystem>Windows</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PrecompiledHeader>Use</PrecompiledHeader>
<PreprocessorDefinitions>NDEBUG;_USING_V110_SDK71_;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<SubSystem>Windows</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PrecompiledHeader>Use</PrecompiledHeader>
<PreprocessorDefinitions>NDEBUG;_USING_V110_SDK71_;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<SubSystem>Windows</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="RemotePathChecker.h" />
<ClInclude Include="stdafx.h" />
<ClInclude Include="StringUtil.h" />
<ClInclude Include="UtilConstants.h" />
<ClInclude Include="CommunicationSocket.h" />
<ClInclude Include="FileUtil.h" />
<ClInclude Include="RegistryUtil.h" />
<ClInclude Include="Version.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="CommunicationSocket.cpp" />
<ClCompile Include="RemotePathChecker.cpp" />
<ClCompile Include="FileUtil.cpp" />
<ClCompile Include="RegistryUtil.cpp" />
<ClCompile Include="stdafx.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
</ClCompile>
<ClCompile Include="StringUtil.cpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@@ -1,70 +0,0 @@
/**
* Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
#include "stdafx.h"
#include "RegistryUtil.h"
using namespace std;
#define SIZE 4096
bool RegistryUtil::ReadRegistry(const wchar_t* key, const wchar_t* name, int* result)
{
wstring* strResult = new wstring();
if(!ReadRegistry(key, name, strResult))
{
return false;
}
*result = stoi( strResult->c_str() );
return true;
}
bool RegistryUtil::ReadRegistry(const wchar_t* key, const wchar_t* name, wstring* result)
{
HRESULT hResult;
HKEY rootKey = nullptr;
hResult = HRESULT_FROM_WIN32(RegOpenKeyEx(HKEY_CURRENT_USER, (LPCWSTR)key, 0, KEY_READ, &rootKey));
if(!SUCCEEDED(hResult))
{
return false;
}
wchar_t value[SIZE];
DWORD value_length = SIZE;
hResult = RegQueryValueEx(rootKey, (LPCWSTR)name, nullptr, nullptr, (LPBYTE)value, &value_length );
if(!SUCCEEDED(hResult))
{
return false;
}
result->append(value);
HRESULT hResult2 = RegCloseKey(rootKey);
if (!SUCCEEDED(hResult2))
{
return false;
}
return true;
}

View File

@@ -1,35 +0,0 @@
/**
* Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
#ifndef REGISTRYUTIL_H
#define REGISTRYUTIL_H
#pragma once
#pragma warning (disable : 4251)
#include <string>
class __declspec(dllexport) RegistryUtil
{
public:
RegistryUtil();
~RegistryUtil();
static bool ReadRegistry(const wchar_t*, const wchar_t*, int*);
static bool ReadRegistry(const wchar_t*, const wchar_t*, std::wstring*);
};
#endif

View File

@@ -1,30 +0,0 @@
/**
* Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
#define PLUG_IN_SOCKET_ADDRESS "127.0.0.1"
#define BACK_SLASH L"\\"
#define CLOSE_BRACE L"]"
#define CLOSE_CURLY_BRACE L"}"
#define COLON L":"
#define COMMAND L"command"
#define COMMA L","
#define OPEN_BRACE L"["
#define OPEN_CURLY_BRACE L"{"
#define QUOTE L"\""
#define VALUE L"value"
#define REGISTRY_ROOT_KEY L"SOFTWARE\\ownCloud Inc\\ownCloud"
#define REGISTRY_ENABLE_OVERLAY L"EnableOverlay"
#define REGISTRY_FILTER_FOLDER L"FilterFolder"

View File

@@ -1 +0,0 @@
#include "stdafx.h"

View File

@@ -1,9 +0,0 @@
#pragma once
#define WIN32_LEAN_AND_MEAN
// Note: Here was a #define for windows target version
// e.g. WINVER / _WIN32_WINNT, see https://devblogs.microsoft.com/oldnewthing/20070411-00/?p=27283
// Unnecessary because we define both in desktop/CMakeLists.txt
#include <windows.h>

View File

@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
*
* Copyright (C) by Michael Schuster <michael.schuster@nextcloud.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
*
-->
<?include $(var.ProjectPath)Platform.wxi?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<!--
IMPORTANT: Keep these constants in sync with WinShellExtConstants.h.in
-->
<!-- Context Menu -->
<?define ContextMenuGuid = "@WIN_SHELLEXT_CONTEXT_MENU_GUID@" ?>
<?define ContextMenuRegKeyName = "@APPLICATION_SHORTNAME@ContextMenuHandler" ?>
<?define ContextMenuDescription = "@APPLICATION_SHORTNAME@ context menu handler" ?>
<!-- Overlays -->
<?define OverlayGuidError = "@WIN_SHELLEXT_OVERLAY_GUID_ERROR@" ?>
<?define OverlayGuidOK = "@WIN_SHELLEXT_OVERLAY_GUID_OK@" ?>
<?define OverlayGuidOKShared = "@WIN_SHELLEXT_OVERLAY_GUID_OK_SHARED@" ?>
<?define OverlayGuidSync = "@WIN_SHELLEXT_OVERLAY_GUID_SYNC@" ?>
<?define OverlayGuidWarning = "@WIN_SHELLEXT_OVERLAY_GUID_WARNING@" ?>
<!--
Preceeding spaces are intended, two spaces to put us ahead of the competition :/
There is a limit in Windows (oh wonder^^) so that only the first 15 extensions get invoked, this is why to use that dirty little trick to get ahead ;)
See: https://docs.microsoft.com/en-us/windows/win32/shell/context-menu-handlers?redirectedfrom=MSDN#employing-the-verb-selection-model
-->
<?define OverlayNameError = " @APPLICATION_SHORTNAME@Error" ?>
<?define OverlayNameOK = " @APPLICATION_SHORTNAME@OK" ?>
<?define OverlayNameOKShared = " @APPLICATION_SHORTNAME@OKShared" ?>
<?define OverlayNameSync = " @APPLICATION_SHORTNAME@Sync" ?>
<?define OverlayNameWarning = " @APPLICATION_SHORTNAME@Warning" ?>
<?define OverlayDescription = "@APPLICATION_SHORTNAME@ overlay handler" ?>
<!--
Integration for Windows Explorer
Avoid SelfReg by the DLLs, see:
https://stackoverflow.com/questions/364187/how-do-you-register-a-win32-com-dll-file-in-wix-3#364210
https://docs.microsoft.com/en-us/windows/win32/msi/selfreg-table#remarks
-->
<DirectoryRef Id="ShellExtDir">
<Component Id="NCContextMenu" Guid="*" Win64="$(var.PlatformWin64)">
<File Id="NCContextMenu.dll" KeyPath="yes" Source="$(var.HarvestAppDir)\shellext\NCContextMenu.dll">
<Class Id="$(var.ContextMenuGuid)" Context="InprocServer32" Description="$(var.ContextMenuDescription)" ThreadingModel="apartment" />
</File>
<RegistryValue Root="HKCR" Key="AllFileSystemObjects\shellex\ContextMenuHandlers\$(var.ContextMenuRegKeyName)" Value="$(var.ContextMenuGuid)" Type="string" Action="write" />
</Component>
<Component Id="NCOverlays" Guid="*" Win64="$(var.PlatformWin64)">
<File Id="NCOverlays.dll" KeyPath="yes" Source="$(var.HarvestAppDir)\shellext\NCOverlays.dll">
<Class Id="$(var.OverlayGuidError)" Context="InprocServer32" Description="$(var.OverlayDescription)" ThreadingModel="apartment" Version="1.0" />
<Class Id="$(var.OverlayGuidOK)" Context="InprocServer32" Description="$(var.OverlayDescription)" ThreadingModel="apartment" Version="1.0" />
<Class Id="$(var.OverlayGuidOKShared)" Context="InprocServer32" Description="$(var.OverlayDescription)" ThreadingModel="apartment" Version="1.0" />
<Class Id="$(var.OverlayGuidSync)" Context="InprocServer32" Description="$(var.OverlayDescription)" ThreadingModel="apartment" Version="1.0" />
<Class Id="$(var.OverlayGuidWarning)" Context="InprocServer32" Description="$(var.OverlayDescription)" ThreadingModel="apartment" Version="1.0" />
</File>
<RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers">
<RegistryValue Key="$(var.OverlayNameError)" Value="$(var.OverlayGuidError)" Type="string" Action="write" />
<RegistryValue Key="$(var.OverlayNameOK)" Value="$(var.OverlayGuidOK)" Type="string" Action="write" />
<RegistryValue Key="$(var.OverlayNameOKShared)" Value="$(var.OverlayGuidOKShared)" Type="string" Action="write" />
<RegistryValue Key="$(var.OverlayNameSync)" Value="$(var.OverlayGuidSync)" Type="string" Action="write" />
<RegistryValue Key="$(var.OverlayNameWarning)" Value="$(var.OverlayGuidWarning)" Type="string" Action="write" />
</RegistryKey>
</Component>
</DirectoryRef>
<ComponentGroup Id="ShellExtensions">
<ComponentRef Id="NCContextMenu" />
<ComponentRef Id="NCOverlays" />
</ComponentGroup>
</Fragment>
</Wix>

View File

@@ -0,0 +1,47 @@
/*
* Copyright (C) by Michael Schuster <michael.schuster@nextcloud.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
*/
#pragma once
// IMPORTANT: Keep these constants in sync with WinShellExtConstants.wxi.in
// Context Menu
#define CONTEXT_MENU_GUID L"@WIN_SHELLEXT_CONTEXT_MENU_GUID@"
#define CONTEXT_MENU_REGKEY_NAME L"@APPLICATION_SHORTNAME@ContextMenuHandler"
#define CONTEXT_MENU_DESCRIPTION L"@APPLICATION_SHORTNAME@ context menu handler"
// Overlays
#define OVERLAY_GUID_ERROR L"@WIN_SHELLEXT_OVERLAY_GUID_ERROR@"
#define OVERLAY_GUID_OK L"@WIN_SHELLEXT_OVERLAY_GUID_OK@"
#define OVERLAY_GUID_OK_SHARED L"@WIN_SHELLEXT_OVERLAY_GUID_OK_SHARED@"
#define OVERLAY_GUID_SYNC L"@WIN_SHELLEXT_OVERLAY_GUID_SYNC@"
#define OVERLAY_GUID_WARNING L"@WIN_SHELLEXT_OVERLAY_GUID_WARNING@"
//
// Preceeding spaces are intended, two spaces to put us ahead of the competition :/
//
// There is a limit in Windows (oh wonder^^) so that only the first 15 extensions get invoked, this is why to use that dirty little trick to get ahead ;)
// See: https://docs.microsoft.com/en-us/windows/win32/shell/context-menu-handlers?redirectedfrom=MSDN#employing-the-verb-selection-model
//
#define OVERLAY_NAME_ERROR L" @APPLICATION_SHORTNAME@Error"
#define OVERLAY_NAME_OK L" @APPLICATION_SHORTNAME@OK"
#define OVERLAY_NAME_OK_SHARED L" @APPLICATION_SHORTNAME@OKShared"
#define OVERLAY_NAME_SYNC L" @APPLICATION_SHORTNAME@Sync"
#define OVERLAY_NAME_WARNING L" @APPLICATION_SHORTNAME@Warning"
#define OVERLAY_DESCRIPTION L"@APPLICATION_SHORTNAME@ overlay handler"
// NCUtil
#define UTIL_PIPE_APP_NAME L"@APPLICATION_EXECUTABLE@"

View File

@@ -205,7 +205,7 @@ AccountSettings::AccountSettings(AccountState *accountState, QWidget *parent)
auto *mnemonic = new QAction(tr("Display mnemonic"), this);
connect(mnemonic, &QAction::triggered, this, &AccountSettings::requesetMnemonic);
_ui->encryptionMessage->addAction(mnemonic);
_ui->encryptionMessage->show();
_ui->encryptionMessage->hide();
}
connect(UserModel::instance(), &UserModel::addAccount,
@@ -841,6 +841,10 @@ void AccountSettings::slotAccountStateChanged()
*/
qCInfo(lcAccountSettings) << "Account" << accountsState()->account()->displayName()
<< "Client Side Encryption" << accountsState()->account()->capabilities().clientSideEncryptionAvailable();
if (_accountState->account()->capabilities().clientSideEncryptionAvailable()) {
_ui->encryptionMessage->show();
}
}
}

View File

@@ -178,7 +178,8 @@ SocketApi::SocketApi(QObject *parent)
if (Utility::isWindows()) {
socketPath = QLatin1String(R"(\\.\pipe\)")
+ QLatin1String("ownCloud-")
+ QLatin1String(APPLICATION_EXECUTABLE)
+ QLatin1String("-")
+ QString::fromLocal8Bit(qgetenv("USERNAME"));
// TODO: once the windows extension supports multiple
// client connections, switch back to the theme name
@@ -718,11 +719,11 @@ void SocketApi::command_GET_STRINGS(const QString &argument, SocketListener *lis
listener->sendMessage(QString("GET_STRINGS:END"));
}
void SocketApi::sendSharingContextMenuOptions(const FileData &fileData, SocketListener *listener)
void SocketApi::sendSharingContextMenuOptions(const FileData &fileData, SocketListener *listener, bool enabled)
{
auto record = fileData.journalRecord();
bool isOnTheServer = record.isValid();
auto flagString = isOnTheServer ? QLatin1String("::") : QLatin1String(":d:");
auto flagString = isOnTheServer && enabled ? QLatin1String("::") : QLatin1String(":d:");
auto capabilities = fileData.folder->accountState()->account()->capabilities();
auto theme = Theme::instance();
@@ -798,7 +799,8 @@ void SocketApi::command_GET_MENU_ITEMS(const QString &argument, OCC::SocketListe
bool hasSeveralFiles = argument.contains(QLatin1Char('\x1e')); // Record Separator
FileData fileData = hasSeveralFiles ? FileData{} : FileData::get(argument);
bool isOnTheServer = fileData.journalRecord().isValid();
auto flagString = isOnTheServer ? QLatin1String("::") : QLatin1String(":d:");
const auto isE2eEncryptedPath = fileData.journalRecord()._isE2eEncrypted || !fileData.journalRecord()._e2eMangledName.isEmpty();
auto flagString = isOnTheServer && !isE2eEncryptedPath ? QLatin1String("::") : QLatin1String(":d:");
if (fileData.folder && fileData.folder->accountState()->isConnected()) {
DirectEditor* editor = getDirectEditorForLocalFile(fileData.localPath);
@@ -809,7 +811,7 @@ void SocketApi::command_GET_MENU_ITEMS(const QString &argument, OCC::SocketListe
listener->sendMessage(QLatin1String("MENU_ITEM:OPEN_PRIVATE_LINK") + flagString + tr("Open in browser"));
}
sendSharingContextMenuOptions(fileData, listener);
sendSharingContextMenuOptions(fileData, listener, !isE2eEncryptedPath);
}
listener->sendMessage(QString("GET_MENU_ITEMS:END"));
}

View File

@@ -120,7 +120,7 @@ private:
Q_INVOKABLE void command_GET_STRINGS(const QString &argument, SocketListener *listener);
// Sends the context menu options relating to sharing to listener
void sendSharingContextMenuOptions(const FileData &fileData, SocketListener *listener);
void sendSharingContextMenuOptions(const FileData &fileData, SocketListener *listener, bool enabled);
/** Send the list of menu item. (added in version 1.1)
* argument is a list of files for which the menu should be shown, separated by '\x1e'

View File

@@ -90,21 +90,36 @@ QVariant ActivityListModel::data(const QModelIndex &index, int role) const
return QString();
case PathRole:
if (!a._file.isEmpty()) {
auto folder = FolderMan::instance()->folder(a._folder);
auto folder = FolderMan::instance()->folderForPath(a._folder);
QString relPath(a._file);
if (folder)
relPath.prepend(folder->remotePath());
list = FolderMan::instance()->findFileInLocalFolders(relPath, ast->account());
if (list.count() > 0) {
return QUrl::fromLocalFile(list.at(0));
}
// File does not exist anymore? Let's try to open its path
if (QFileInfo(relPath).exists()) {
if (list.isEmpty() && QFileInfo(relPath).exists()) {
list = FolderMan::instance()->findFileInLocalFolders(QFileInfo(relPath).path(), ast->account());
if (list.count() > 0) {
return QVariant(list.at(0));
}
if (list.isEmpty()) {
return QString();
}
const auto path = list.at(0);
folder = FolderMan::instance()->folderForPath(path);
// If this is an E2EE file or folder, pretend we got no path, this leads to
// hiding the share button which is what we want
if (folder) {
SyncJournalFileRecord rec;
folder->journalDb()->getFileRecord(a._file.mid(1), &rec);
if (rec.isValid() && (rec._isE2eEncrypted || !rec._e2eMangledName.isEmpty())) {
return QString();
}
}
return QUrl::fromLocalFile(path);
}
return QString();
case AbsolutePathRole: {

View File

@@ -91,8 +91,8 @@ BandwidthManager::~BandwidthManager() = default;
void BandwidthManager::registerUploadDevice(UploadDevice *p)
{
_absoluteUploadDeviceList.append(p);
_relativeUploadDeviceList.append(p);
_absoluteUploadDeviceList.push_back(p);
_relativeUploadDeviceList.push_back(p);
QObject::connect(p, &QObject::destroyed, this, &BandwidthManager::unregisterUploadDevice);
if (usingAbsoluteUploadLimit()) {
@@ -110,8 +110,8 @@ void BandwidthManager::registerUploadDevice(UploadDevice *p)
void BandwidthManager::unregisterUploadDevice(QObject *o)
{
auto p = reinterpret_cast<UploadDevice *>(o); // note, we might already be in the ~QObject
_absoluteUploadDeviceList.removeAll(p);
_relativeUploadDeviceList.removeAll(p);
_absoluteUploadDeviceList.remove(p);
_relativeUploadDeviceList.remove(p);
if (p == _relativeLimitCurrentMeasuredDevice) {
_relativeLimitCurrentMeasuredDevice = nullptr;
_relativeUploadLimitProgressAtMeasuringRestart = 0;
@@ -120,7 +120,7 @@ void BandwidthManager::unregisterUploadDevice(QObject *o)
void BandwidthManager::registerDownloadJob(GETFileJob *j)
{
_downloadJobList.append(j);
_downloadJobList.push_back(j);
QObject::connect(j, &QObject::destroyed, this, &BandwidthManager::unregisterDownloadJob);
if (usingAbsoluteDownloadLimit()) {
@@ -138,7 +138,7 @@ void BandwidthManager::registerDownloadJob(GETFileJob *j)
void BandwidthManager::unregisterDownloadJob(QObject *o)
{
auto *j = reinterpret_cast<GETFileJob *>(o); // note, we might already be in the ~QObject
_downloadJobList.removeAll(j);
_downloadJobList.remove(j);
if (_relativeLimitCurrentMeasuredJob == j) {
_relativeLimitCurrentMeasuredJob = nullptr;
_relativeDownloadLimitProgressAtMeasuringRestart = 0;
@@ -147,7 +147,7 @@ void BandwidthManager::unregisterDownloadJob(QObject *o)
void BandwidthManager::relativeUploadMeasuringTimerExpired()
{
if (!usingRelativeUploadLimit() || _relativeUploadDeviceList.count() == 0) {
if (!usingRelativeUploadLimit() || _relativeUploadDeviceList.empty()) {
// Not in this limiting mode, just wait 1 sec to continue the cycle
_relativeUploadDelayTimer.setInterval(1000);
_relativeUploadDelayTimer.start();
@@ -160,7 +160,7 @@ void BandwidthManager::relativeUploadMeasuringTimerExpired()
return;
}
qCDebug(lcBandwidthManager) << _relativeUploadDeviceList.count() << "Starting Delay";
qCDebug(lcBandwidthManager) << _relativeUploadDeviceList.size() << "Starting Delay";
qint64 relativeLimitProgressMeasured = (_relativeLimitCurrentMeasuredDevice->_readWithProgress
+ _relativeLimitCurrentMeasuredDevice->_read)
@@ -191,7 +191,7 @@ void BandwidthManager::relativeUploadMeasuringTimerExpired()
_relativeUploadDelayTimer.setInterval(realWaitTimeMsec);
_relativeUploadDelayTimer.start();
int deviceCount = _relativeUploadDeviceList.count();
auto deviceCount = _relativeUploadDeviceList.size();
qint64 quotaPerDevice = relativeLimitProgressDifference * (uploadLimitPercent / 100.0) / deviceCount + 1.0;
Q_FOREACH (UploadDevice *ud, _relativeUploadDeviceList) {
ud->setBandwidthLimited(true);
@@ -211,15 +211,16 @@ void BandwidthManager::relativeUploadDelayTimerExpired()
return; // oh, not actually needed
}
if (_relativeUploadDeviceList.isEmpty()) {
if (_relativeUploadDeviceList.empty()) {
return;
}
qCDebug(lcBandwidthManager) << _relativeUploadDeviceList.count() << "Starting measuring";
qCDebug(lcBandwidthManager) << _relativeUploadDeviceList.size() << "Starting measuring";
// Take first device and then append it again (= we round robin all devices)
_relativeLimitCurrentMeasuredDevice = _relativeUploadDeviceList.takeFirst();
_relativeUploadDeviceList.append(_relativeLimitCurrentMeasuredDevice);
_relativeLimitCurrentMeasuredDevice = _relativeUploadDeviceList.front();
_relativeUploadDeviceList.pop_front();
_relativeUploadDeviceList.push_back(_relativeLimitCurrentMeasuredDevice);
_relativeUploadLimitProgressAtMeasuringRestart = (_relativeLimitCurrentMeasuredDevice->_readWithProgress
+ _relativeLimitCurrentMeasuredDevice->_read)
@@ -241,7 +242,7 @@ void BandwidthManager::relativeUploadDelayTimerExpired()
// for downloads:
void BandwidthManager::relativeDownloadMeasuringTimerExpired()
{
if (!usingRelativeDownloadLimit() || _downloadJobList.count() == 0) {
if (!usingRelativeDownloadLimit() || _downloadJobList.empty()) {
// Not in this limiting mode, just wait 1 sec to continue the cycle
_relativeDownloadDelayTimer.setInterval(1000);
_relativeDownloadDelayTimer.start();
@@ -254,7 +255,7 @@ void BandwidthManager::relativeDownloadMeasuringTimerExpired()
return;
}
qCDebug(lcBandwidthManager) << _downloadJobList.count() << "Starting Delay";
qCDebug(lcBandwidthManager) << _downloadJobList.size() << "Starting Delay";
qint64 relativeLimitProgressMeasured = _relativeLimitCurrentMeasuredJob->currentDownloadPosition();
qint64 relativeLimitProgressDifference = relativeLimitProgressMeasured - _relativeDownloadLimitProgressAtMeasuringRestart;
@@ -280,7 +281,7 @@ void BandwidthManager::relativeDownloadMeasuringTimerExpired()
_relativeDownloadDelayTimer.setInterval(realWaitTimeMsec);
_relativeDownloadDelayTimer.start();
int jobCount = _downloadJobList.count();
auto jobCount = _downloadJobList.size();
qint64 quota = relativeLimitProgressDifference * (downloadLimitPercent / 100.0);
if (quota > 20 * 1024) {
qCInfo(lcBandwidthManager) << "ADJUSTING QUOTA FROM " << quota << " TO " << quota - 20 * 1024;
@@ -305,16 +306,17 @@ void BandwidthManager::relativeDownloadDelayTimerExpired()
return; // oh, not actually needed
}
if (_downloadJobList.isEmpty()) {
qCDebug(lcBandwidthManager) << _downloadJobList.count() << "No jobs?";
if (_downloadJobList.empty()) {
qCDebug(lcBandwidthManager) << _downloadJobList.size() << "No jobs?";
return;
}
qCDebug(lcBandwidthManager) << _downloadJobList.count() << "Starting measuring";
qCDebug(lcBandwidthManager) << _downloadJobList.size() << "Starting measuring";
// Take first device and then append it again (= we round robin all devices)
_relativeLimitCurrentMeasuredJob = _downloadJobList.takeFirst();
_downloadJobList.append(_relativeLimitCurrentMeasuredJob);
_relativeLimitCurrentMeasuredJob = _downloadJobList.front();
_downloadJobList.pop_front();
_downloadJobList.push_back(_relativeLimitCurrentMeasuredJob);
_relativeDownloadLimitProgressAtMeasuringRestart = _relativeLimitCurrentMeasuredJob->currentDownloadPosition();
_relativeLimitCurrentMeasuredJob->setBandwidthLimited(false);
@@ -373,21 +375,22 @@ void BandwidthManager::switchingTimerExpired()
void BandwidthManager::absoluteLimitTimerExpired()
{
if (usingAbsoluteUploadLimit() && _absoluteUploadDeviceList.count() > 0) {
qint64 quotaPerDevice = _currentUploadLimit / qMax(1, _absoluteUploadDeviceList.count());
qCDebug(lcBandwidthManager) << quotaPerDevice << _absoluteUploadDeviceList.count() << _currentUploadLimit;
if (usingAbsoluteUploadLimit() && !_absoluteUploadDeviceList.empty()) {
qint64 quotaPerDevice = _currentUploadLimit / qMax((std::list<UploadDevice *>::size_type)1, _absoluteUploadDeviceList.size());
qCDebug(lcBandwidthManager) << quotaPerDevice << _absoluteUploadDeviceList.size() << _currentUploadLimit;
Q_FOREACH (UploadDevice *device, _absoluteUploadDeviceList) {
device->giveBandwidthQuota(quotaPerDevice);
qCDebug(lcBandwidthManager) << "Gave " << quotaPerDevice / 1024.0 << " kB to" << device;
}
}
if (usingAbsoluteDownloadLimit() && _downloadJobList.count() > 0) {
qint64 quotaPerJob = _currentDownloadLimit / qMax(1, _downloadJobList.count());
qCDebug(lcBandwidthManager) << quotaPerJob << _downloadJobList.count() << _currentDownloadLimit;
if (usingAbsoluteDownloadLimit() && !_downloadJobList.empty()) {
qint64 quotaPerJob = _currentDownloadLimit / qMax((std::list<GETFileJob *>::size_type)1, _downloadJobList.size());
qCDebug(lcBandwidthManager) << quotaPerJob << _downloadJobList.size() << _currentDownloadLimit;
Q_FOREACH (GETFileJob *j, _downloadJobList) {
j->giveBandwidthQuota(quotaPerJob);
qCDebug(lcBandwidthManager) << "Gave " << quotaPerJob / 1024.0 << " kB to" << j;
}
}
}
}
} // namespace OCC

View File

@@ -16,9 +16,9 @@
#define BANDWIDTHMANAGER_H
#include <QObject>
#include <QLinkedList>
#include <QTimer>
#include <QIODevice>
#include <list>
namespace OCC {
@@ -71,8 +71,8 @@ private:
QTimer _absoluteLimitTimer;
// FIXME merge these two lists
QLinkedList<UploadDevice *> _absoluteUploadDeviceList;
QLinkedList<UploadDevice *> _relativeUploadDeviceList;
std::list<UploadDevice *> _absoluteUploadDeviceList;
std::list<UploadDevice *> _relativeUploadDeviceList;
QTimer _relativeUploadMeasuringTimer;
@@ -86,7 +86,7 @@ private:
qint64 _relativeUploadLimitProgressAtMeasuringRestart;
qint64 _currentUploadLimit;
QLinkedList<GETFileJob *> _downloadJobList;
std::list<GETFileJob *> _downloadJobList;
QTimer _relativeDownloadMeasuringTimer;
// for relative bw limiting, we need to wait this amount before measuring again
@@ -100,6 +100,7 @@ private:
qint64 _currentDownloadLimit;
};
}
} // namespace OCC
#endif

View File

@@ -22,7 +22,6 @@
#include "networkjobs.h"
#include <QMutex>
#include <QWaitCondition>
#include <QLinkedList>
#include <deque>
#include "syncoptions.h"

View File

@@ -18,7 +18,6 @@
#include <QHash>
#include <QObject>
#include <QMap>
#include <QLinkedList>
#include <QElapsedTimer>
#include <QTimer>
#include <QPointer>

View File

@@ -290,8 +290,14 @@ void SyncFileStatusTracker::slotSyncFinished()
// Clear the sync counts to reduce the impact of unsymetrical inc/dec calls (e.g. when directory job abort)
QHash<QString, int> oldSyncCount;
std::swap(_syncCount, oldSyncCount);
for (auto it = oldSyncCount.begin(); it != oldSyncCount.end(); ++it)
for (auto it = oldSyncCount.begin(); it != oldSyncCount.end(); ++it) {
// Don't announce folders, fileStatus expect only paths without '/', otherwise it asserts
if (it.key().endsWith('/')) {
continue;
}
emit fileStatusChanged(getSystemDestination(it.key()), fileStatus(it.key()));
}
}
void SyncFileStatusTracker::slotSyncEngineRunningChanged()

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Kanselleer</translation>
</message>
@@ -247,20 +247,26 @@
<translation>Geen rekening opgestel nie</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<translation>Aktiveer enkripsie</translation>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>Add new</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation>Aktiveer enkripsie</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Waarskuwing</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Waarskuwing</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Open vouer</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation>Enkripteer</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 van %2 in gebruik</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation type="unfinished"/>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Meld aan</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation type="unfinished"/>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation type="unfinished"/>
</message>
@@ -1460,22 +1466,22 @@ Continuing the sync as normal will cause all your files to be overwritten by an
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2921,18 +2927,18 @@ It is not advisable to use it.</source>
<translation>Deel met %1</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Ek het iets met u gedeel</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation type="unfinished"/>
</message>
@@ -2942,38 +2948,38 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Kopieer privaatskakel na knipbord</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation>Open in blaaier</translation>
</message>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Отказ</translation>
</message>
@@ -247,13 +247,14 @@
<translation>Няма настроен профил.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
@@ -261,6 +262,11 @@
<source>Add new</source>
<translation>Добави нов</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation>Премахни</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Внимание</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Профил</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Внимание</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Отвори папката</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Избор на елементи за синхронизиране</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Синхронизирай сега</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Рестартирай синхронизирането</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Продължи синхронизирането</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Пауза</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Премахни синхронизирането</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Създаването на папката се провали</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Потвърждаване за премахване на синхронизация</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Наистина ли желаете да премахнете синхронизирането на папката&lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Бележка:&lt;/b&gt; Действието &lt;b&gt;няма&lt;/b&gt; да предизвика изтриване на файлове.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Премахни</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Синхронизират се файлове</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>В момента се извършва синхронизиране.&lt;br/&gt;Да бъде ли прекратено?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>Ползвате %1 (%3%) от %2. Някои папки, включително монтирани по мрежата или споделени може да имат различни лимити.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>Ползвате %1 от %2</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>В момента няма достъпна информация за използването на хранилището.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>Ползвате %1</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 като &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>Сървърът е версия %1 - стара и неподдържана! Можете .</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Осъществена връзка с %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>Сървърът %1 е временно недостъпен.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Сървърът %1 е в режим на поддръжка.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Отписан от %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Извършва се оторизация от браузъра. &lt;a href=&apos;%1&apos;&gt;Кликнете тук&lt;/a&gt; за да отворите отново браузъра.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>Не може да се осъществи връзка като %1 с %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>Няма %1 конфигурирана връзка.</translation>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Вписване</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Някои папки не са синхронизирани защото са твърде големи:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Има папки, които не са синхронизирани защото са външни хранилища:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Има папки, които не са синхронизирани защото са твърде големи или са външни хранилища:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Потвърждение за премахване на профил</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Наистина ли желаете да премахнете връзката към профила &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Бележка:&lt;/b&gt; Дейтствието &lt;b&gt;няма&lt;/b&gt; да предизвика изтриване на файлове.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Премахни връзката</translation>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation type="unfinished"/>
</message>
@@ -1462,22 +1468,22 @@ Continuing the sync as normal will cause all your files to be overwritten by an
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2923,18 +2929,18 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Споделих нещо с вас</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation type="unfinished"/>
</message>
@@ -2944,38 +2950,38 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation>Отвори в браузъра</translation>
</message>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Storno</translation>
</message>
@@ -247,20 +247,26 @@
<translation>Nenastaven žádný účet.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation>Tento účet podporuje šifrování end-to-end</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<translation>Zapnout šifrování</translation>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation>Zobrazovat mnemotechnickou</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>Add new</source>
<translation>Přidat nový</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation>Zapnout šifrování</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,177 +278,177 @@
<source>Remove</source>
<translation>Odebrat</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Varování</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Účet</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Varování</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation>Zobrazit E2E mnemotechnickou</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation>Není možné zašifrovat složku, která něco obsahuje přesuňte soubory pryč.
Počkejte na příští synchronizaci a pak složku zašifrujte.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Otevřít složku</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation>Šífrovat</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation>Upravit ignorované soubory</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Vybrat co synchronizovat</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Vynutit synchronizaci nyní</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Restartovat synchronizaci</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Pokračovat v synchronizaci</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Pozastavit synchronizaci</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Odstranit připojení synchronizace složky</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Vytvoření složky se nezdařilo</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation>&lt;p&gt;Nedaří se vytvořit místní složku &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Potvrdit odstranění připojení synchronizace složky</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Opravdu chcete zastavit synchronizaci složky &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Poznámka:&lt;/b&gt; Toto &lt;b&gt;neodstraní&lt;/b&gt; žádné soubory.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Odstranit připojení synchronizace složky</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Synchronizace probíhá</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>Operace synchronizace právě probíhá.&lt;br/&gt;Přejete si ji ukončit?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>Používaných %1 (%3%) z %2. Některé složky včetně připojených síťových nebo sdílených složek mohou mít odlišné limity.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>Používaných %1 z %2</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Momentálně nejsou k dispozici žádné informace o využití úložiště.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 používaný</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 jako &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>Server verze %1 je zastaralý a nepodporovaný! Pokračujte na vlastní riziko.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Připojeno k %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>Server %1 je dočasně nedostupný.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Na serveru %1 v tuto chvíli probíhá údržba.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Odhlášeno z %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Získávání pověření z prohlížeče. &lt;a href=&apos;%1&apos;&gt;Klikněte sem&lt;/a&gt; pro opětovné otevření prohlížeče.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation>Připojování k %1</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>Bez připojení k %1 na %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>Nenastaveno žádné spojení s %1.</translation>
</message>
@@ -452,32 +458,32 @@ Počkejte na příští synchronizaci a pak složku zašifrujte.</translation>
<translation>Přihlásit</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Tyto složky nebyly synchronizovány, protože jsou příliš velké:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Tyto složky nebyly synchronizovány, protože se nacházejí na externích úložištích:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Tyto složky nebyly synchronizovány, protože jsou příliš velké, nebo se nacházejí na externích úložištích:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Potvrdit odstranění účtu</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Opravdu chcete odstranit připojení k účtu &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Poznámka:&lt;/b&gt; Toto &lt;b&gt;neodstraní&lt;/b&gt; žádné soubory.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Odstranit připojení</translation>
</message>
@@ -533,12 +539,12 @@ Počkejte na příští synchronizaci a pak složku zašifrujte.</translation>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation>Soubory ze seznamu ignorovaných a symbolické odkazy nejsou synchronizovány. Mezi to patří:</translation>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation>Pro více aktivit, otevřete aplikaci Aktivity</translation>
</message>
@@ -1474,22 +1480,22 @@ Pokračováním v synchronizaci způsobí přepsání všech vašich souborů st
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation>Je vyžadováno heslo ke sdílení</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation>Zadejte heslo pro sdílení odkazem:</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation>Chyba sdílení</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2943,18 +2949,18 @@ Nedoporučuje se jí používat.</translation>
<translation>Sdílet s %1</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation>Sdílení kontextové nabídky</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Něco jsem vám nasdílel(a)</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation>Možnosti sdílení</translation>
</message>
@@ -2964,38 +2970,38 @@ Nedoporučuje se jí používat.</translation>
<translation>Sdílet prostřednictvím %1</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Zkopírovat soukromý odkaz do schránky</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation>Poslat soukromý odkaz e-mailem</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation>Příjemcům sdílení tohoto souboru není dovoleno ho sdílet dále dalším</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation>Zkopírovat veřejný odkaz</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation>Zkopírovat interní odkaz</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation>Upravit</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation>Otevřít v prohlížeči</translation>
</message>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Annuller</translation>
</message>
@@ -247,20 +247,26 @@
<translation>Ingen konto konfigureret.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation>Denne konto supporterer end-to-end kryptering</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<translation>Slå kryptering til</translation>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>Add new</source>
<translation>Tilføj ny</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation>Slå kryptering til</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation>Fjern</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Advarsel</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Konto</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Advarsel</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation>vis E2E huskeregel</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Åbn mappe</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation>Krypter</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation>Rediger Ignorerede Filer</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Vælg hvad der skal synkroniseres</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Gennemtving synkronisering nu</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Genstart synkronisering</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Genoptag synkronisering</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Paus synkronisering</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Fjern mappesynkroniseringsforbindelse</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Fejl ved oprettelse af mappe</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation>&lt;p&gt;Kunne ikke oprette lokal mappe &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Bekræft Fjern mappesynkroniseringsforbindelse</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Ønsker du virkelig at stoppe synkronisering af mappen &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt;Dette sletter &lt;b&gt;ikke&lt;/b&gt;nogen filer.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Fjern mappesynkroniseringsforbindelse</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Synkronisering i gang</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>Synkronisering pågår.&lt;br/&gt;Ønsker du at afslutte den?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) af %2 i brug. Nogle mapper, inklusiv netværksdiske eller delte mapper, har muligvis andre begrænsninger.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 af %2 er i brug</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Der er i øjeblikket ingen informationer om brug af lager tilgængelig.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 i brug</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 som &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>Server version %1 er gammel og usupporteret! Fortsæt egen risiko.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Forbundet til %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>Serveren %1 er midlertidig utilgængelig.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Serveren %1 er i vedligeholdelsestilstand.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Logget ud fra %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Indhenter bemyndigelse fra browseren. &lt;a href=&apos;%1&apos;&gt;Klik her&lt;/a&gt; for at genåbne browseren.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation>Forbinder til %1 </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>Ingen forbindelse til %1 hos %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>Ingen %1 forbindelse konfigureret.</translation>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Log ind</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Der er mapper som ikke blev synkroniseret fordi de er for store:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Der er mapper som ikke blev synkroniseret fordi de er eksterne lagre:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Der er mapper som ikke blev synkroniseret fordi de er for store eller eksterne lagre:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Bekræft sletning af konto</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Ønsker du virkelig at fjerne forbindelse til kontoen &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt;Dette sletter &lt;b&gt;ikke&lt;/b&gt;nogen filer.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Fjern forbindelse</translation>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation>Filer fra ignorer listen og symbolske link er ikke synkroniseret. Det inkluderer:</translation>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation>For flere aktiviteter åbn Activity app&apos;n.</translation>
</message>
@@ -1473,22 +1479,22 @@ Fortsætter sync som normalt, vil alle dine filer blive overskrevne med en ældr
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation>Password til deling påkrævet</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation>Indtast venligst et kodeord til denne linkdeling</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation>Delefejl</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2941,18 +2947,18 @@ Det frarådes at benytte den.</translation>
<translation>Del med %1</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation>Deling af kontekst menu</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Jeg delte noget med dig</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation>Dele muligheder</translation>
</message>
@@ -2962,38 +2968,38 @@ Det frarådes at benytte den.</translation>
<translation>Del via %1</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Kopier privat link til udklipsholderen</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation>Send privat link via e-mail </translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation>Videredeling af denne fil ikke tilladt</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation>Kopier offentligt link</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation>Kopier internt link</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation>Rediger</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation>Åbn i browser</translation>
</message>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Abbrechen</translation>
</message>
@@ -247,20 +247,26 @@
<translation>Kein Konto konfiguriert.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation>Dieses Konto unterstützt Ende-zu-Ende-Verschlüsselung</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<translation>Verschlüsselung aktivieren</translation>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation>Mnemonik anzeigen</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>Add new</source>
<translation>Neues Konto hinzufügen</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation>Verschlüsselung aktivieren</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,177 +278,177 @@
<source>Remove</source>
<translation>Entfernen</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Warnung</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Benutzerkonto</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Warnung</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation>Gedächtnisstütze für E2E anzeigen</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation>Sie können einen Ordner nicht mit Inhalten verschlüsseln, bitte Dateien entfernen.
Warten Sie auf die neue Synchronisierung und verschlüsseln Sie sie dann.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Ordner öffnen</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation>Verschlüsseln</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation>Ignorierte Dateien bearbeiten</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Zu synchronisierende Elemente auswählen</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Synchronisierung jetzt erzwingen </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Synchronisierung neustarten</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Synchronisierung fortsetzen</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Synchronisierung pausieren</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Ordner-Synchronisierung entfernen</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Anlegen des Ordners fehlgeschlagen</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation>&lt;p&gt;Konnte lokalen Ordner &lt;i&gt;%1&lt;/i&gt; nicht anlegen.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Bestätigen Sie die Löschung der Ordner-Synchronisierung</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Möchten Sie den Ordner &lt;i&gt;%1&lt;/i&gt; nicht mehr synchronisieren?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Anmerkung:&lt;/b&gt; Dies wird &lt;b&gt;keine&lt;/b&gt; Dateien löschen.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Ordner-Synchronisierung entfernen</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Synchronisierung läuft</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>Die Synchronisierung läuft gerade.&lt;br/&gt;Wollen Sie diese beenden?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) von %2 Serverkapazität verwendet. Einige Ordner, einschließlich über das Netzwerk verbundene oder geteilte Ordner, können unterschiedliche Beschränkungen aufweisen. </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 von %2 Serverkapazität verwendet</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Derzeit sind keine Speichernutzungsinformationen verfügbar.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 wird verwendet</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 als &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>Die Serverversion %1 ist veraltet und wird nicht mehr unterstützt! Fortfahren auf eigenes Risiko.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Verbunden mit %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>Server %1 ist derzeit nicht verfügbar.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Server %1 befindet sich im Wartungsmodus.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Abgemeldet von %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Berechtigung vom Browser einholen. &lt;a href=&apos;%1&apos;&gt; Klicken Sie hier &lt;/a&gt;, um den Browser erneut zu öffnen.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation>Verbinde zu %1 </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>Keine Verbindung zu %1 auf %2</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>Keine %1-Verbindung konfiguriert.</translation>
</message>
@@ -452,32 +458,32 @@ Warten Sie auf die neue Synchronisierung und verschlüsseln Sie sie dann.</trans
<translation>Anmelden</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Einige Ordner konnten nicht synchronisiert werden, da sie zu groß sind:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Es gibt Ordner, die nicht synchronisiert werden konnten, da sie externe Speicher sind:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Es gibt Ordner, die nicht synchronisiert werden konnten, da sie zu groß oder externe Speicher sind:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Kontenentfernung bestätigen</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Möchten Sie wirklich die Verbindung zum Konto &lt;i&gt;%1&lt;/i&gt; lösen?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Anmerkung:&lt;/b&gt; Dieser Vorgang wird &lt;b&gt;keine&lt;/b&gt; Dateien löschen.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Verbindung entfernen</translation>
</message>
@@ -533,12 +539,12 @@ Warten Sie auf die neue Synchronisierung und verschlüsseln Sie sie dann.</trans
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation>Dateien aus der Ignorierliste sowie symbolische Links werden nicht synchronisiert. Dazu gehören:</translation>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation>Um weitere Aktivitäten anzusehen bitte die Activity-App öffnen.</translation>
</message>
@@ -1475,22 +1481,22 @@ Wenn diese Synchronisierung fortgesetzt wird, werden Dateien eventuell von älte
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation>Passwort für die Freigabe erforderlich</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation>Bitte Passwort für die Link-Freigabe eingeben:</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation>Fehler beim Teilen</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2943,18 +2949,18 @@ Es wird davon abgeraten sie zu verwenden.</translation>
<translation>Teile mit %1</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation>Kontextmenü Freigabe</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Ich habe etwas mit Ihnen geteilt</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation>Freigabeoptionen</translation>
</message>
@@ -2964,38 +2970,38 @@ Es wird davon abgeraten sie zu verwenden.</translation>
<translation>Teilen mittels %1</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Privater Link in die Zwischenablage kopiert</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation>Privaten Link als E-Mail verschicken </translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation>Weiterteilen dieser Datei ist nicht erlaubt</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation>Öffentlichen Link kopieren</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation>Kopiere internen Link</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation>Bearbeiten</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation>Im Browser öffnen</translation>
</message>
@@ -4151,7 +4157,7 @@ Es wird davon abgeraten sie zu verwenden.</translation>
<message>
<location filename="../src/gui/tray/Window.qml" line="489"/>
<source>Open URL</source>
<translation>ZRL öffnen</translation>
<translation>URL öffnen</translation>
</message>
<message>
<location filename="../src/gui/tray/Window.qml" line="565"/>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Άκυρο</translation>
</message>
@@ -247,20 +247,26 @@
<translation>Δεν ρυθμίστηκε λογαριασμός.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation>Ο λογαριασμός υποστηρίζει κρυπτογράφηση από άκρη σε άκρη</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<translation>Ενεργοποίηση κρυπτογράφησης</translation>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation>Εμφάνιση μνήμης</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>Add new</source>
<translation>Προσθήκη νέου</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation>Ενεργοποίηση κρυπτογράφησης</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,177 +278,177 @@
<source>Remove</source>
<translation>Αφαίρεση</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Προειδοποίηση</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Λογαριασμός</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Προειδοποίηση</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation>Εμφάνιση μνήμης Ε2Ε</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation>Δεν μπορείτε να κρυπτογραφήσετε ένα φάκελο με περιεχόμενο, παρακαλούμε καταργήστε τα αρχεία.
Περιμένετε για το νέο συγχρονισμό και στη συνέχεια κρυπτογραφήστε τον.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Άνοιγμα φακέλου</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation>Κρυπτογράφηση</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation>Έλεγχος εξαιρούμενων</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Επιλέξτε τι θα συγχρονιστεί</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Συγχρονισμός τώρα</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Επανεκκίνηση συγχρονισμού</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Συνέχιση συγχρονισμού</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Παύση συγχρονισμού</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Αφαίρεση συγχρονισμού φακέλου</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Αποτυχία δημιουργίας φακέλου</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation>&lt;p&gt;Αδυναμία δημιουργίας τοπικού φακέλου &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Επιβεβαίωση αφαίρεσης συγχρονισμού</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Θέλετε πραγματικά να σταματήσετε το συγχρονισμό του φακέλου &lt;i&gt;%1&lt;/i&gt;;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Σημείωση:&lt;/b&gt; Αυτό &lt;b&gt;δεν&lt;/b&gt; θα διαγράψει κανένα αρχείο.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Αφαίρεση συγχρονισμού</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Εκτελείται Συγχρονισμός </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>Η λειτουργία συγχρονισμού εκτελείται.&lt;br/&gt; Θέλετε να την τερματίσετε;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) από %2 σε χρήση. Μερικοί φάκελοι, συμπεριλαμβανομένων των δικτυακών ή των κοινόχρηστων μπορεί να έχουν διαφορετικά όρια.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 από %2 σε χρήση</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Προς το παρόν δεν υπάρχουν πληροφορίες χρήσης χώρου αποθήκευσης διαθέσιμες.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 σε χρήση</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 ως &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>Η έκδοση του διακομιστή %1 είναι παλιά και δεν υποστηρίζεται! Προχωρείστε με δική σας ευθύνη.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Συνδεδεμένο με %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>Ο διακομιστής %1 δεν είναι διαθέσιμος προσωρινά.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Ο διακομιστής %1 βρίσκεται τώρα σε κατάσταση συντήρησης.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Αποσυνδέθηκε από %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Γίνεται λήψη της εξουσιοδότησης από το πρόγραμμα περιήγησης. Κάντε κλικ &lt;a href=&apos;%1&apos;&gt;εδώ&lt;/a&gt; για να ανοίξετε πάλι το πρόγραμμα περιήγησης.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation>Σύνδεση σε %1 &apos;...&apos;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>Δεν υπάρχει σύνδεση με το %1 στο %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>Δεν έχει ρυθμιστεί σύνδεση με το %1.</translation>
</message>
@@ -452,32 +458,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Είσοδος</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Υπάρχουν φάκελοι που δεν συγχρονίστηκαν επειδή είναι πολύ μεγάλοι:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Υπάρχουν φάκελοι που δεν συγχρονίστηκαν επειδή είναι εξωτερικοί αποθηκευτικοί χώροι:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Υπάρχουν φάκελοι που δεν συγχρονίστηκαν επειδή είναι πολύ μεγάλοι ή αποθηκευτικοί χώροι:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Επιβεβαίωση Αφαίρεσης Λογαριασμού</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Θέλετε πραγματικά να αφαιρέσετε τη σύνδεση με το λογαριασμό &lt;i&gt;%1&lt;/i&gt;;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Σημείωση:&lt;/b&gt; Αυτό &lt;b&gt;δεν&lt;/b&gt; θα διαγράψει κανένα αρχείο.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Αφαίρεση σύνδεσης</translation>
</message>
@@ -533,12 +539,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation>Τα αρχεία από την λίστα αγνόησης αλλά και των συμβολικών συνδέσμων δεν θα συνχρονιστούν. Περιλαμβάνει: </translation>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation>Για εμφάνιση περισσότερων δραστηριοτήτων παρακαλώ ανοίξτε την εφαρμογή Activity.</translation>
</message>
@@ -1473,22 +1479,22 @@ Continuing the sync as normal will cause all your files to be overwritten by an
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation>Απαιτείται κωδικός πρόσβασης για το κοινόχρηστο</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation>Παρακαλώ εισάγετε κωδικό πρόσβασης για το κοινόχρηστο σύνδεσμο:</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation>Σφάλμα διαμοιρασμού</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2942,18 +2948,18 @@ It is not advisable to use it.</source>
<translation>Διαμοιρασμός με %1</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation>Διαμοιρασμός καταλόγου μενού</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Μοιράστηκα κάτι μαζί σου</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation>Επιλογές κοινής χρήσης</translation>
</message>
@@ -2963,38 +2969,38 @@ It is not advisable to use it.</source>
<translation>Διαμοιρασμός μέσω %1</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Αντιγραφή ιδιωτικού συνδέσμου στο πρόχειρο</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation>Αποστολή ιδιωτικού συνδέσμου με αλληλογραφία...</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation>Δεν επιτρέπεται ο επαναδιαμοιρασμός</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation>Αντιγραφή δημόσιου συνδέσμου</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation>Αντιγραφή εσωτερικού συνδέσμου</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation>Επεξεργασία</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation>Άνοιγμα στον περιηγητή</translation>
</message>
@@ -4036,7 +4042,7 @@ It is not advisable to use it.</source>
<message>
<location filename="../src/gui/tray/UserLine.qml" line="169"/>
<source>Remove Account</source>
<translation type="unfinished"/>
<translation>Αφαίρεση λογαριασμού</translation>
</message>
</context>
<context>
@@ -4120,12 +4126,12 @@ It is not advisable to use it.</source>
<message>
<location filename="../src/gui/tray/Window.qml" line="149"/>
<source>Resume sync for all</source>
<translation type="unfinished"/>
<translation>Συνέχιση όλων των συγχρονισμών</translation>
</message>
<message>
<location filename="../src/gui/tray/Window.qml" line="149"/>
<source>Pause sync for all</source>
<translation type="unfinished"/>
<translation>Παύση όλων των συγχρονισμών</translation>
</message>
<message>
<location filename="../src/gui/tray/Window.qml" line="213"/>
@@ -4145,17 +4151,17 @@ It is not advisable to use it.</source>
<message>
<location filename="../src/gui/tray/Window.qml" line="489"/>
<source>Open sync item locally</source>
<translation type="unfinished"/>
<translation>Άνοιγμα τοπικά συγχρονισμένου στοιχείου</translation>
</message>
<message>
<location filename="../src/gui/tray/Window.qml" line="489"/>
<source>Open URL</source>
<translation type="unfinished"/>
<translation>Άνοιγμα URL</translation>
</message>
<message>
<location filename="../src/gui/tray/Window.qml" line="565"/>
<source>Open share dialog</source>
<translation type="unfinished"/>
<translation>Άνοιγμα του διαλόγου διαμοιρασμού</translation>
</message>
</context>
<context>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Cancel</translation>
</message>
@@ -247,13 +247,14 @@
<translation>No account configured.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
@@ -261,6 +262,11 @@
<source>Add new</source>
<translation>Add new</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation>Remove</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Warning</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Account</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Warning</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation>Show E2E mnemonic</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Open folder</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation>Encrypt</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Choose what to sync</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Force sync now</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Restart sync</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Resume sync</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Pause sync</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Remove folder sync connection</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Folder creation failed</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Confirm Folder Sync Connection Removal</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Remove Folder Sync Connection</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Sync Running</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 of %2 in use</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Currently there is no storage usage information available.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 in use</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 as &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>The server version %1 is old and unsupported! Proceed at your own risk.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Connected to %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>Server %1 is temporarily unavailable.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Server %1 is currently in maintenance mode.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Signed out from %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Obtaining authorisation from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>No connection to %1 at %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>No %1 connection configured.</translation>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Log in</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>There are folders that were not synchronised because they are too big: </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>There are folders that were not synchronised because they are external storages: </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>There are folders that were not synchronised because they are too big or external storages: </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Confirm Account Removal</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Remove connection</translation>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation type="unfinished"/>
</message>
@@ -1468,22 +1474,22 @@ Continuing the sync as normal will cause all your files to be overwritten by an
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation>Sharing error</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2800,7 +2806,7 @@ It is not advisable to use it.</source>
<message>
<location filename="../src/gui/sharelinkwidget.cpp" line="241"/>
<source>Add another link</source>
<translation type="unfinished"/>
<translation>Add another link</translation>
</message>
<message>
<location filename="../src/gui/sharelinkwidget.cpp" line="464"/>
@@ -2934,18 +2940,18 @@ It is not advisable to use it.</source>
<translation>Share with %1</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation>Context menu share</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>I shared something with you</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation type="unfinished"/>
</message>
@@ -2955,38 +2961,38 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Copy private link to clipboard</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation>Resharing this file is not allowed</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation>Open in browser</translation>
</message>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Nuligi</translation>
</message>
@@ -247,20 +247,26 @@
<translation>Neniu konto agordita.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation>Tiu konto subtenas tutvojan ĉifradon</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<translation>Ebligi ĉifradon</translation>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>Add new</source>
<translation>Aldoni novan</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation>Ebligi ĉifradon</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation>Forigi</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Averto</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Konto</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Averto</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation>Montri E2E memorigilon</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Malfermi dosierujon</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation>Ĉifri</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation>Redakti ignoritajn dosierojn</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Elekti tion, kion sinkronigi</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Sinkronigi nun</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Rekomenci sinkronigon</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Daŭrigi sinkronigon</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Paŭzigi sinkronigon</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Ne plu sinkronigi tiun dosierujon</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Kreo de dosierujo malsukcesis</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Konfirmu la forigadon de la sinkronigo de tiu dosierujo</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Ĉu vi vere volas ĉesi sinkronigi la dosierujon &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Notu:&lt;/b&gt; Tio &lt;b&gt;ne&lt;/b&gt; forigos la dosierojn.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Ne plu sinkronigi tiun dosierujon</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Sinkronigo ruliĝanta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>Sinkronigo estas ruliĝanta.&lt;br/&gt;Ĉu vi volas fini ĝin?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) el %2 uzataj. Certaj dosierujoj, inkluzive de rete muntitaj kunhavigitaj dosierujoj, eble havas aliajn limigojn.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 el %2 uzitaj</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Ĉi-momente estas neniu informo pri konservejospaco.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 uzata(j)</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 per la konto &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>La servilo je versio %1 estas malnova kaj nesubtenata. Daŭrigu je via risko.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Konektita al %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>Servilo %1 dumtempe ne disponeblas</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>La servilo %1 estas en reĝimo de prizorgado</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Elsalutita de %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Atendante rajtigon el la retumilo. &lt;a href=&apos;%1&apos;&gt;Alklaku ĉi tie&lt;/a&gt; por remalfermi la retumilon.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>Neniu konekto al servilo %1 je la adreso %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>Neniu konekto al %1 agordita.</translation>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Ensaluti</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Kelkaj dosierujoj ne sinkroniĝis, ĉar ili estas tro grandaj:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Kelkaj dosierujoj ne sinkroniĝis, ĉar ili estas konservataj en ekstera konservejo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Kelkaj dosierujoj ne sinkroniĝis, ĉar ili estas tro grandaj âù konservataj en ekstera konservejo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Konfirmi forigadon de la konto</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Ĉu vi vere volas forigi konekton al la konto &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Notu:&lt;/b&gt; Tio &lt;b&gt;ne&lt;/b&gt; forigos la dosierojn.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Forigi konekton</translation>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation>Dosieroj el la listo de ignoritaj dosieroj kaj ankaŭ simbolaj ligiloj ne sinkroniĝas. Tio entenas:</translation>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation type="unfinished"/>
</message>
@@ -1473,22 +1479,22 @@ Se vi plu sinkronigas, la sinkronigo anstataŭigos ĉiujn viajn dosierojn per an
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation>Eraro de kunhavigo</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2940,18 +2946,18 @@ It is not advisable to use it.</source>
<translation>Kunhavigi kun %1</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation>Menuo pri kunhavigo</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Mi kunhavigis ion kun vi</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation>Opcioj pri kunhavigo</translation>
</message>
@@ -2961,38 +2967,38 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Kopii privatan ligilon al tondujo</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation>Re-kunhavigi ne estas permesata</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation>Kopii publikan ligilon</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation>Kopii internan ligilon</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation>Malfermi per retumilo</translation>
</message>

View File

@@ -194,7 +194,7 @@
<message>
<location filename="../src/gui/accountmanager.cpp" line="354"/>
<source>To protect your Cryptographic Identity, we encrypt it with a mnemonic of 12 dictionary words. Please note these down and keep them safe. They will be needed to add other devices to your account (like your mobile phone or laptop).</source>
<translation>Para proteger tu identidad criptográfica, la ciframos con una regla nemotécnica de 12 palabras del diccionario. Por favor, anótalas y mantenlas a salvo. Estas palabras serán necesarias para añadir otros dispositivos a su cuenta (como un teléfono móvil o un portátil). </translation>
<translation>Para proteger tu identidad criptográfica, la ciframos con una regla mnemotécnica de 12 palabras del diccionario. Por favor, anótalas y mantenlas a salvo. Estas palabras serán necesarias para añadir otros dispositivos a su cuenta (como un teléfono móvil o un portátil). </translation>
</message>
</context>
<context>
@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Cancelar</translation>
</message>
@@ -247,20 +247,26 @@
<translation>No se ha configurado ninguna cuenta.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation>Esta cuenta soporta cifrado punto a punto</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<translation>Habilitar cifrado</translation>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation>Mostrar regla mnemotécnica</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>Add new</source>
<translation>Añadir nuevo</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation>Habilitar cifrado</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,177 +278,177 @@
<source>Remove</source>
<translation>Eliminar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Aviso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation>Mostrar mnemotécnica E2E</translation>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Aviso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation>Mostrar regla mnemotécnica E2E</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation>No puede cifrar una carpeta con contenidos, por favor, elimine los archivos.
Espere a una nueva sincronización, luego cifrala.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Abrir carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation>Cifrar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation>Editar archivos ignorados</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Elija qué sincronizar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Forzar la sincronización ahora</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Reiniciar sync</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Continuar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Pausar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Eliminar la sincronización de carpetas conectadas</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Ha fallado la creación de la carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation>&lt;p&gt;No pudo crear la carpeta local &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Confirme la sincronización para la eliminación de la carpeta conectada</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿De verdad quiere dejar de sincronizar la carpeta &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; elminará los archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Eliminar carpeta de sincronización conectada</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Sincronización en curso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>La sincronización está en curso.&lt;br/&gt;¿Desea interrumpirla?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) de %2 en uso. Algunas carpetas, como carpetas de red o compartidas, podrían tener límites diferentes.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 de %2 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Actualmente no hay información disponible sobre el uso de almacenamiento.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 como &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>¡La versión del servidor %1 es antigua y no está soportada! Si continúas, lo haces bajo tu propio riesgo.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Conectado a %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>Servidor %1 no está disponible temporalmente.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>El servidor %1 está actualmente en modo mantenimiento.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Cerró sesión desde %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Obteniendo autorización desde el navegador. &lt;a href=&apos;%1&apos;&gt;Haga clic aquí&lt;/a&gt; para re-abrir el navegador.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation>Conectando a %1 ...</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>Sin conexión a %1 en %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>No hay ninguna conexión de %1 configurada.</translation>
</message>
@@ -452,32 +458,32 @@ Espere a una nueva sincronización, luego cifrala.</translation>
<translation>Iniciar sesión</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Hay carpetas que no se han sincronizado porque son demasiado grandes:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Hay carpetas que no se han sincronizado porque están en el almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Hay carpetas que no se han sincronizado porque son demasiado grandes o están en el almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Confirmar eliminación de cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿De verdad quiere eliminar la conexión a la cuenta &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; eliminará los archivos.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Eliminar conexión</translation>
</message>
@@ -533,12 +539,12 @@ Espere a una nueva sincronización, luego cifrala.</translation>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation>Los archivos de la la lista de ignorados así como los enlace simbólicos no están sincronizados: Esto incluye:</translation>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation>Para más detalles, por favor, abre la app Actividades.</translation>
</message>
@@ -1475,22 +1481,22 @@ Si continua con la sincronización todos los archivos serán remplazados por su
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation>Se requiere contraseña para compartir</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation>Por favor, introduce una contraseña para tu enlace compartido:</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation>Error al compartir</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2943,18 +2949,18 @@ No se recomienda usarla.</translation>
<translation>Compartir con %1</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation>Compartir en menú contextual</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>He compartido algo contigo</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation>Opciones de compartir</translation>
</message>
@@ -2964,38 +2970,38 @@ No se recomienda usarla.</translation>
<translation>Compartir vía %1</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Copiar enlace privado al portapapeles</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation>Enviar enlace privado por correo electrónico ...</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation>No está permitido compartir de nuevo</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation>Copiar enlace público</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation>Copiar enlace interno</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation>Editar</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation>Abrir en navegador</translation>
</message>
@@ -3060,7 +3066,7 @@ No se recomienda usarla.</translation>
<message>
<location filename="../src/gui/sslbutton.cpp" line="105"/>
<source>Expires on:</source>
<translation>Expira en:</translation>
<translation>Caduca el:</translation>
</message>
<message>
<location filename="../src/gui/sslbutton.cpp" line="108"/>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Cancelar</translation>
</message>
@@ -247,13 +247,14 @@
<translation>No hay cuenta configurada.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
@@ -261,6 +262,11 @@
<source>Add new</source>
<translation>Agregar nuevo</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation>Borrar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Abrir carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Elegir que sincronizar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Forzar sincronización ahora</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Reinicia sincronización </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Reanudar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Pausar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Eliminar conexión de sincronización de carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Falló la creacion de la carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Confirmar eliminación de conexión de sincronización de carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;Realmente quieres detener la sincronización de la carpeta &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; eliminara ningun archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Eliminar Conexión de Sincronización de Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Sincronización en curso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>La sincronización está en curso.&lt;br/&gt;¿Querés interrumpirla?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 de %2 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Actualmente no hay información disponible acerca del uso del almacenamiento.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 de &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>¡La versión del servidor% 1 es antigua y no está soportada! Proceda bajo su propio riesgo.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Conectado a %1</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>El servidor %1 esta temporalmente sin conexión</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Servidor %1 actualmente en modo mantenimiento.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Registrado desde %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Obteniendo autorización del navegador. &lt;a href=&apos;%1&apos;&gt;Click aquí&lt;/a&gt; para volver a abrir el navegador.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>Sin conexión a %1 desde %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>No hay ninguna conexión de %1 configurada.</translation>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Iniciar sesión</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Confirmar la eliminación de la cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Eliminar conexión</translation>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation type="unfinished"/>
</message>
@@ -1460,22 +1466,22 @@ Continuing the sync as normal will cause all your files to be overwritten by an
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2921,18 +2927,18 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation type="unfinished"/>
</message>
@@ -2942,38 +2948,38 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation>Copiar link publico</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation type="unfinished"/>
</message>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Cancelar</translation>
</message>
@@ -247,13 +247,14 @@
<translation>No hay cuentas configuradas.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
@@ -261,6 +262,11 @@
<source>Add new</source>
<translation>Agregar nuevo</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation>Eliminar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Abrir carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Elige que sincronizar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Forzar la sincronización ahora</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Reiniciar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Reanudar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Pausar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Eliminar la conexión de sincronización de carpetas</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Falló la creación de la carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Confirmar la Eliminación de la Conexión de Sincronización de Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres dejar de sincronizar la carpeta &lt;i&gt;%1&lt;/i&gt;?&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Eliminar la Conexión de Sincronización de la Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Sincronización en curso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>La operación de sincronización está en curso. &lt;br/&gt;¿Deseas terminarla?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) de %2 en uso. Algunas carpetas, incluidas carpetas montadas en red o carpetas compartidas, pueden tener diferentes límites</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 de %2 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Actualmente no hay información disponible del espacio usado.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 como &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>¡La versión del servidor %1 es antigua y no está soportada! Procede bajo tu propio riesgo. </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Conectado a %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>El servidor %1 se encuntra temporalmente no disponible</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Actualmente el servidor %1 se encuentra en modo mantenimiento.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Cerraste sesión en %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Obteniendo autorización del navegador. &lt;a href=&apos;%1&apos;&gt;Haz click aquí&lt;/a&gt; para re-abrir el navegador.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>No hay conexión a %1 en %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>No hay %1 conexión configurada. </translation>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Iniciar sesión</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes o son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Confirma la Remosion de la Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres eliminar la conexión a la cuenta &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Eliminar conexión</translation>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation type="unfinished"/>
</message>
@@ -1465,22 +1471,22 @@ Continuar con la sincronización como normal causará que todos tus archivos sea
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2927,18 +2933,18 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Te compartí algo</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation type="unfinished"/>
</message>
@@ -2948,38 +2954,38 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Copiar la liga privada al portapapeles</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation type="unfinished"/>
</message>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Cancelar</translation>
</message>
@@ -247,13 +247,14 @@
<translation>No hay cuentas configuradas.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
@@ -261,6 +262,11 @@
<source>Add new</source>
<translation>Agregar nuevo</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation>Eliminar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Abrir carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Elige que sincronizar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Forzar la sincronización ahora</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Reiniciar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Reanudar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Pausar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Eliminar la conexión de sincronización de carpetas</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Falló la creación de la carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Confirmar la Eliminación de la Conexión de Sincronización de Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres dejar de sincronizar la carpeta &lt;i&gt;%1&lt;/i&gt;?&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Eliminar la Conexión de Sincronización de la Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Sincronización en curso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>La operación de sincronización está en curso. &lt;br/&gt;¿Deseas terminarla?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) de %2 en uso. Algunas carpetas, incluidas carpetas montadas en red o carpetas compartidas, pueden tener diferentes límites</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 de %2 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Actualmente no hay información disponible del espacio usado.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 como &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>¡La versión del servidor %1 es antigua y no está soportada! Procede bajo tu propio riesgo. </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Conectado a %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>El servidor %1 se encuntra temporalmente no disponible</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Actualmente el servidor %1 se encuentra en modo mantenimiento.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Cerraste sesión en %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Obteniendo autorización del navegador. &lt;a href=&apos;%1&apos;&gt;Haz click aquí&lt;/a&gt; para re-abrir el navegador.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>No hay conexión a %1 en %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>No hay %1 conexión configurada. </translation>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Iniciar sesión</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes o son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Confirma la Remosion de la Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres eliminar la conexión a la cuenta &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Eliminar conexión</translation>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation type="unfinished"/>
</message>
@@ -1465,22 +1471,22 @@ Continuar con la sincronización como normal causará que todos tus archivos sea
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2927,18 +2933,18 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Te compartí algo</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation type="unfinished"/>
</message>
@@ -2948,38 +2954,38 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Copiar la liga privada al portapapeles</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation type="unfinished"/>
</message>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Cancelar</translation>
</message>
@@ -247,13 +247,14 @@
<translation>No hay cuentas configuradas.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
@@ -261,6 +262,11 @@
<source>Add new</source>
<translation>Agregar nuevo</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation>Eliminar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Abrir carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Elige que sincronizar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Forzar la sincronización ahora</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Reiniciar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Reanudar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Pausar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Eliminar la conexión de sincronización de carpetas</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Falló la creación de la carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Confirmar la Eliminación de la Conexión de Sincronización de Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres dejar de sincronizar la carpeta &lt;i&gt;%1&lt;/i&gt;?&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Eliminar la Conexión de Sincronización de la Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Sincronización en curso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>La operación de sincronización está en curso. &lt;br/&gt;¿Deseas terminarla?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) de %2 en uso. Algunas carpetas, incluidas carpetas montadas en red o carpetas compartidas, pueden tener diferentes límites</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 de %2 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Actualmente no hay información disponible del espacio usado.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 como &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>¡La versión del servidor %1 es antigua y no está soportada! Procede bajo tu propio riesgo. </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Conectado a %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>El servidor %1 se encuntra temporalmente no disponible</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Actualmente el servidor %1 se encuentra en modo mantenimiento.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Cerraste sesión en %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Obteniendo autorización del navegador. &lt;a href=&apos;%1&apos;&gt;Haz click aquí&lt;/a&gt; para re-abrir el navegador.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>No hay conexión a %1 en %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>No hay %1 conexión configurada. </translation>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Iniciar sesión</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes o son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Confirma la Remosion de la Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres eliminar la conexión a la cuenta &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Eliminar conexión</translation>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation type="unfinished"/>
</message>
@@ -1465,22 +1471,22 @@ Continuar con la sincronización como normal causará que todos tus archivos sea
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2927,18 +2933,18 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Te compartí algo</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation type="unfinished"/>
</message>
@@ -2948,38 +2954,38 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Copiar la liga privada al portapapeles</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation type="unfinished"/>
</message>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Cancelar</translation>
</message>
@@ -247,13 +247,14 @@
<translation>No hay cuentas configuradas.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
@@ -261,6 +262,11 @@
<source>Add new</source>
<translation>Agregar nuevo</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation>Eliminar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Abrir carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Elige que sincronizar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Forzar la sincronización ahora</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Reiniciar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Reanudar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Pausar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Eliminar la conexión de sincronización de carpetas</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Falló la creación de la carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Confirmar la Eliminación de la Conexión de Sincronización de Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres dejar de sincronizar la carpeta &lt;i&gt;%1&lt;/i&gt;?&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Eliminar la Conexión de Sincronización de la Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Sincronización en curso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>La operación de sincronización está en curso. &lt;br/&gt;¿Deseas terminarla?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) de %2 en uso. Algunas carpetas, incluidas carpetas montadas en red o carpetas compartidas, pueden tener diferentes límites</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 de %2 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Actualmente no hay información disponible del espacio usado.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 como &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>¡La versión del servidor %1 es antigua y no está soportada! Procede bajo tu propio riesgo. </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Conectado a %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>El servidor %1 se encuntra temporalmente no disponible</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Actualmente el servidor %1 se encuentra en modo mantenimiento.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Cerraste sesión en %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Obteniendo autorización del navegador. &lt;a href=&apos;%1&apos;&gt;Haz click aquí&lt;/a&gt; para re-abrir el navegador.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>No hay conexión a %1 en %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>No hay %1 conexión configurada. </translation>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Iniciar sesión</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes o son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Confirma la Remosion de la Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres eliminar la conexión a la cuenta &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Eliminar conexión</translation>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation type="unfinished"/>
</message>
@@ -1465,22 +1471,22 @@ Continuar con la sincronización como normal causará que todos tus archivos sea
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2927,18 +2933,18 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Te compartí algo</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation type="unfinished"/>
</message>
@@ -2948,38 +2954,38 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Copiar la liga privada al portapapeles</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation type="unfinished"/>
</message>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Cancelar</translation>
</message>
@@ -247,13 +247,14 @@
<translation>No hay cuentas configuradas.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
@@ -261,6 +262,11 @@
<source>Add new</source>
<translation>Agregar nuevo</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation>Eliminar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Abrir carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Elige que sincronizar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Forzar la sincronización ahora</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Reiniciar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Reanudar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Pausar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Eliminar la conexión de sincronización de carpetas</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Falló la creación de la carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Confirmar la Eliminación de la Conexión de Sincronización de Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres dejar de sincronizar la carpeta &lt;i&gt;%1&lt;/i&gt;?&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Eliminar la Conexión de Sincronización de la Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Sincronización en curso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>La operación de sincronización está en curso. &lt;br/&gt;¿Deseas terminarla?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) de %2 en uso. Algunas carpetas, incluidas carpetas montadas en red o carpetas compartidas, pueden tener diferentes límites</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 de %2 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Actualmente no hay información disponible del espacio usado.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 como &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>¡La versión del servidor %1 es antigua y no está soportada! Procede bajo tu propio riesgo. </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Conectado a %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>El servidor %1 se encuntra temporalmente no disponible</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Actualmente el servidor %1 se encuentra en modo mantenimiento.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Cerraste sesión en %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Obteniendo autorización del navegador. &lt;a href=&apos;%1&apos;&gt;Haz click aquí&lt;/a&gt; para re-abrir el navegador.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>No hay conexión a %1 en %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>No hay %1 conexión configurada. </translation>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Iniciar sesión</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes o son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Confirma la Remosion de la Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres eliminar la conexión a la cuenta &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Eliminar conexión</translation>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation type="unfinished"/>
</message>
@@ -1465,22 +1471,22 @@ Continuar con la sincronización como normal causará que todos tus archivos sea
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2927,18 +2933,18 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Te compartí algo</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation type="unfinished"/>
</message>
@@ -2948,38 +2954,38 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Copiar la liga privada al portapapeles</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation type="unfinished"/>
</message>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Cancelar</translation>
</message>
@@ -247,13 +247,14 @@
<translation>No hay cuentas configuradas.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
@@ -261,6 +262,11 @@
<source>Add new</source>
<translation>Agregar nuevo</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation>Eliminar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Abrir carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Elige que sincronizar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Forzar la sincronización ahora</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Reiniciar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Reanudar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Pausar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Eliminar la conexión de sincronización de carpetas</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Falló la creación de la carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Confirmar la Eliminación de la Conexión de Sincronización de Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres dejar de sincronizar la carpeta &lt;i&gt;%1&lt;/i&gt;?&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Eliminar la Conexión de Sincronización de la Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Sincronización en curso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>La operación de sincronización está en curso. &lt;br/&gt;¿Deseas terminarla?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) de %2 en uso. Algunas carpetas, incluidas carpetas montadas en red o carpetas compartidas, pueden tener diferentes límites</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 de %2 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Actualmente no hay información disponible del espacio usado.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 como &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>¡La versión del servidor %1 es antigua y no está soportada! Procede bajo tu propio riesgo. </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Conectado a %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>El servidor %1 se encuntra temporalmente no disponible</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Actualmente el servidor %1 se encuentra en modo mantenimiento.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Cerraste sesión en %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Obteniendo autorización del navegador. &lt;a href=&apos;%1&apos;&gt;Haz click aquí&lt;/a&gt; para re-abrir el navegador.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>No hay conexión a %1 en %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>No hay %1 conexión configurada. </translation>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Iniciar sesión</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes o son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Confirma la Remosion de la Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres eliminar la conexión a la cuenta &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Eliminar conexión</translation>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation type="unfinished"/>
</message>
@@ -1465,22 +1471,22 @@ Continuar con la sincronización como normal causará que todos tus archivos sea
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2927,18 +2933,18 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Te compartí algo</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation type="unfinished"/>
</message>
@@ -2948,38 +2954,38 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Copiar la liga privada al portapapeles</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation type="unfinished"/>
</message>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Cancelar</translation>
</message>
@@ -247,13 +247,14 @@
<translation>No hay cuentas configuradas.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
@@ -261,6 +262,11 @@
<source>Add new</source>
<translation>Agregar nuevo</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation>Eliminar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Abrir carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Elige que sincronizar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Forzar la sincronización ahora</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Reiniciar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Reanudar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Pausar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Eliminar la conexión de sincronización de carpetas</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Falló la creación de la carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Confirmar la Eliminación de la Conexión de Sincronización de Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres dejar de sincronizar la carpeta &lt;i&gt;%1&lt;/i&gt;?&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Eliminar la Conexión de Sincronización de la Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Sincronización en curso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>La operación de sincronización está en curso. &lt;br/&gt;¿Deseas terminarla?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) de %2 en uso. Algunas carpetas, incluidas carpetas montadas en red o carpetas compartidas, pueden tener diferentes límites</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 de %2 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Actualmente no hay información disponible del espacio usado.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 como &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>¡La versión del servidor %1 es antigua y no está soportada! Procede bajo tu propio riesgo. </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Conectado a %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>El servidor %1 se encuntra temporalmente no disponible</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Actualmente el servidor %1 se encuentra en modo mantenimiento.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Cerraste sesión en %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Obteniendo autorización del navegador. &lt;a href=&apos;%1&apos;&gt;Haz click aquí&lt;/a&gt; para re-abrir el navegador.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>No hay conexión a %1 en %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>No hay %1 conexión configurada. </translation>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Iniciar sesión</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes o son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Confirma la Remosion de la Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres eliminar la conexión a la cuenta &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Eliminar conexión</translation>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation type="unfinished"/>
</message>
@@ -1465,22 +1471,22 @@ Continuar con la sincronización como normal causará que todos tus archivos sea
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2927,18 +2933,18 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Te compartí algo</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation type="unfinished"/>
</message>
@@ -2948,38 +2954,38 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Copiar la liga privada al portapapeles</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation type="unfinished"/>
</message>

View File

@@ -221,8 +221,8 @@
</message>
<message>
<location filename="../src/gui/accountsettings.ui" line="126"/>
<location filename="../src/gui/accountsettings.cpp" line="573"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<location filename="../src/gui/accountsettings.cpp" line="577"/>
<location filename="../src/gui/accountsettings.cpp" line="976"/>
<source>Cancel</source>
<translation>Cancelar</translation>
</message>
@@ -247,13 +247,14 @@
<translation>No hay cuentas configuradas.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="216"/>
<location filename="../src/gui/accountsettings.cpp" line="203"/>
<location filename="../src/gui/accountsettings.cpp" line="220"/>
<source>This account supports end-to-end encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="218"/>
<source>Enable encryption</source>
<location filename="../src/gui/accountsettings.cpp" line="205"/>
<source>Display mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
@@ -261,6 +262,11 @@
<source>Add new</source>
<translation>Agregar nuevo</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="222"/>
<source>Enable encryption</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="224"/>
<location filename="../src/gui/accountsettings.cpp" line="1068"/>
@@ -272,176 +278,176 @@
<source>Remove</source>
<translation>Eliminar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="232"/>
<source>Account</source>
<translation>Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="236"/>
<source>Warning</source>
<translation>Advertencia</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="261"/>
<source>Show E2E mnemonic</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="289"/>
<location filename="../src/gui/accountsettings.cpp" line="293"/>
<source>You cannot encrypt a folder with contents, please remove the files.
Wait for the new sync, then encrypt it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="358"/>
<location filename="../src/gui/accountsettings.cpp" line="416"/>
<location filename="../src/gui/accountsettings.cpp" line="362"/>
<location filename="../src/gui/accountsettings.cpp" line="420"/>
<source>Open folder</source>
<translation>Abrir carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="375"/>
<location filename="../src/gui/accountsettings.cpp" line="379"/>
<source>Encrypt</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="383"/>
<location filename="../src/gui/accountsettings.cpp" line="419"/>
<location filename="../src/gui/accountsettings.cpp" line="387"/>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<source>Edit Ignored Files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="423"/>
<location filename="../src/gui/accountsettings.cpp" line="427"/>
<source>Choose what to sync</source>
<translation>Elige que sincronizar</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="429"/>
<location filename="../src/gui/accountsettings.cpp" line="433"/>
<source>Force sync now</source>
<translation>Forzar la sincronización ahora</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="431"/>
<location filename="../src/gui/accountsettings.cpp" line="435"/>
<source>Restart sync</source>
<translation>Reiniciar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Resume sync</source>
<translation>Reanudar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="437"/>
<location filename="../src/gui/accountsettings.cpp" line="441"/>
<source>Pause sync</source>
<translation>Pausar sincronización</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="440"/>
<location filename="../src/gui/accountsettings.cpp" line="444"/>
<source>Remove folder sync connection</source>
<translation>Eliminar la conexión de sincronización de carpetas</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="511"/>
<location filename="../src/gui/accountsettings.cpp" line="515"/>
<source>Folder creation failed</source>
<translation>Falló la creación de la carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="512"/>
<location filename="../src/gui/accountsettings.cpp" line="516"/>
<source>&lt;p&gt;Could not create local folder &lt;i&gt;%1&lt;/i&gt;.&lt;/p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="565"/>
<location filename="../src/gui/accountsettings.cpp" line="569"/>
<source>Confirm Folder Sync Connection Removal</source>
<translation>Confirmar la Eliminación de la Conexión de Sincronización de Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="566"/>
<location filename="../src/gui/accountsettings.cpp" line="570"/>
<source>&lt;p&gt;Do you really want to stop syncing the folder &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres dejar de sincronizar la carpeta &lt;i&gt;%1&lt;/i&gt;?&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="572"/>
<location filename="../src/gui/accountsettings.cpp" line="576"/>
<source>Remove Folder Sync Connection</source>
<translation>Eliminar la Conexión de Sincronización de la Carpeta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="657"/>
<location filename="../src/gui/accountsettings.cpp" line="661"/>
<source>Sync Running</source>
<translation>Sincronización en curso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="658"/>
<location filename="../src/gui/accountsettings.cpp" line="662"/>
<source>The syncing operation is running.&lt;br/&gt;Do you want to terminate it?</source>
<translation>La operación de sincronización está en curso. &lt;br/&gt;¿Deseas terminarla?</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="734"/>
<location filename="../src/gui/accountsettings.cpp" line="738"/>
<source>%1 (%3%) of %2 in use. Some folders, including network mounted or shared folders, might have different limits.</source>
<translation>%1 (%3%) de %2 en uso. Algunas carpetas, incluidas carpetas montadas en red o carpetas compartidas, pueden tener diferentes límites</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="735"/>
<location filename="../src/gui/accountsettings.cpp" line="739"/>
<source>%1 of %2 in use</source>
<translation>%1 de %2 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="744"/>
<location filename="../src/gui/accountsettings.cpp" line="748"/>
<source>Currently there is no storage usage information available.</source>
<translation>Actualmente no hay información disponible del espacio usado.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="747"/>
<location filename="../src/gui/accountsettings.cpp" line="751"/>
<source>%1 in use</source>
<translation>%1 en uso</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="774"/>
<location filename="../src/gui/accountsettings.cpp" line="778"/>
<source>%1 as &lt;i&gt;%2&lt;/i&gt;</source>
<translation>%1 como &lt;i&gt;%2&lt;/i&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="780"/>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<source>The server version %1 is old and unsupported! Proceed at your own risk.</source>
<translation>¡La versión del servidor %1 es antigua y no está soportada! Procede bajo tu propio riesgo. </translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="782"/>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<source>Connected to %1.</source>
<translation>Conectado a %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="784"/>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<source>Server %1 is temporarily unavailable.</source>
<translation>El servidor %1 se encuntra temporalmente no disponible</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="786"/>
<location filename="../src/gui/accountsettings.cpp" line="790"/>
<source>Server %1 is currently in maintenance mode.</source>
<translation>Actualmente el servidor %1 se encuentra en modo mantenimiento.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="788"/>
<location filename="../src/gui/accountsettings.cpp" line="792"/>
<source>Signed out from %1.</source>
<translation>Cerraste sesión en %1.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="797"/>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<source>Obtaining authorization from the browser. &lt;a href=&apos;%1&apos;&gt;Click here&lt;/a&gt; to re-open the browser.</source>
<translation>Obteniendo autorización del navegador. &lt;a href=&apos;%1&apos;&gt;Haz click aquí&lt;/a&gt; para re-abrir el navegador.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="801"/>
<location filename="../src/gui/accountsettings.cpp" line="805"/>
<source>Connecting to %1 </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="804"/>
<location filename="../src/gui/accountsettings.cpp" line="808"/>
<source>No connection to %1 at %2.</source>
<translation>No hay conexión a %1 en %2.</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="810"/>
<location filename="../src/gui/accountsettings.cpp" line="814"/>
<source>No %1 connection configured.</source>
<translation>No hay %1 conexión configurada. </translation>
</message>
@@ -451,32 +457,32 @@ Wait for the new sync, then encrypt it.</source>
<translation>Iniciar sesión</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="923"/>
<location filename="../src/gui/accountsettings.cpp" line="931"/>
<source>There are folders that were not synchronized because they are too big: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="925"/>
<location filename="../src/gui/accountsettings.cpp" line="933"/>
<source>There are folders that were not synchronized because they are external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="926"/>
<location filename="../src/gui/accountsettings.cpp" line="934"/>
<source>There are folders that were not synchronized because they are too big or external storages: </source>
<translation>Hay carpetas que no fueron sincronizadas porque son demasiado grandes o son de almacenamiento externo:</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="960"/>
<location filename="../src/gui/accountsettings.cpp" line="968"/>
<source>Confirm Account Removal</source>
<translation>Confirma la Remosion de la Cuenta</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="961"/>
<location filename="../src/gui/accountsettings.cpp" line="969"/>
<source>&lt;p&gt;Do you really want to remove the connection to the account &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will &lt;b&gt;not&lt;/b&gt; delete any files.&lt;/p&gt;</source>
<translation>&lt;p&gt;¿Realmente quieres eliminar la conexión a la cuenta &lt;i&gt;%1&lt;/i&gt;?&lt;/p&gt;&lt;p&gt;&lt;b&gt;Nota:&lt;/b&gt; Esto &lt;b&gt;no&lt;/b&gt; borrará ningún archivo.&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/gui/accountsettings.cpp" line="967"/>
<location filename="../src/gui/accountsettings.cpp" line="975"/>
<source>Remove connection</source>
<translation>Eliminar conexión</translation>
</message>
@@ -532,12 +538,12 @@ Wait for the new sync, then encrypt it.</source>
<context>
<name>OCC::ActivityListModel</name>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="341"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="356"/>
<source>Files from the ignore list as well as symbolic links are not synced. This includes:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="443"/>
<location filename="../src/gui/tray/ActivityListModel.cpp" line="458"/>
<source>For more activities please open the Activity app.</source>
<translation type="unfinished"/>
</message>
@@ -1465,22 +1471,22 @@ Continuar con la sincronización como normal causará que todos tus archivos sea
<context>
<name>OCC::GetOrCreatePublicLinkShare</name>
<message>
<location filename="../src/gui/socketapi.cpp" line="563"/>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<source>Password for share required</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="564"/>
<location filename="../src/gui/socketapi.cpp" line="565"/>
<source>Please enter a password for your link share:</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="583"/>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<source>Sharing error</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="584"/>
<location filename="../src/gui/socketapi.cpp" line="585"/>
<source>Could not retrieve or create the public link share. Error:
%1</source>
@@ -2927,18 +2933,18 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="536"/>
<location filename="../src/gui/socketapi.cpp" line="537"/>
<source>Context menu share</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="693"/>
<location filename="../src/gui/socketapi.cpp" line="694"/>
<source>I shared something with you</source>
<translation>Te compartí algo</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="706"/>
<location filename="../src/gui/socketapi.cpp" line="737"/>
<location filename="../src/gui/socketapi.cpp" line="707"/>
<location filename="../src/gui/socketapi.cpp" line="738"/>
<source>Share options</source>
<translation type="unfinished"/>
</message>
@@ -2948,38 +2954,38 @@ It is not advisable to use it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="708"/>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<source>Copy private link to clipboard</source>
<translation>Copiar la liga privada al portapapeles</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="709"/>
<location filename="../src/gui/socketapi.cpp" line="710"/>
<source>Send private link by email </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="735"/>
<location filename="../src/gui/socketapi.cpp" line="736"/>
<source>Resharing this file is not allowed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="748"/>
<location filename="../src/gui/socketapi.cpp" line="750"/>
<location filename="../src/gui/socketapi.cpp" line="749"/>
<location filename="../src/gui/socketapi.cpp" line="751"/>
<source>Copy public link</source>
<translation>Copiar enlace público</translation>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="754"/>
<location filename="../src/gui/socketapi.cpp" line="755"/>
<source>Copy internal link</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="807"/>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<source>Edit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/gui/socketapi.cpp" line="809"/>
<location filename="../src/gui/socketapi.cpp" line="811"/>
<source>Open in browser</source>
<translation type="unfinished"/>
</message>

Some files were not shown because too many files have changed in this diff Show More