Comparar commits

...

100 Commits

Autor SHA1 Mensagem Data
Klaas Freitag 3e31d86596 Add missing trailing semicolon as nagged by rpmlint. 2013-09-26 11:13:19 +02:00
Klaas Freitag ab007e2bb2 Set version to 1.4.1 2013-09-26 10:29:14 +02:00
Klaas Freitag c45d55b94b Create a rc2. 2013-09-24 12:45:45 +02:00
Klaas Freitag 7048bd8cc9 Handle app icon names properly. 2013-09-24 12:19:29 +02:00
Klaas Freitag cae6ca987f Revert "Fix application shortname for proper icon"
We must not change the app short name for ownCloud. Too dangerous as it
is used all over.
This reverts commit 65171cfb3a.
2013-09-24 11:48:19 +02:00
Klaas Freitag 65171cfb3a Fix application shortname for proper icon 2013-09-23 18:23:21 +02:00
Klaas Freitag 7ec636aeb6 Added changelog entries. 2013-09-23 16:36:49 +02:00
Klaas Freitag c96980a57d Set version to 1.4.1rc1 2013-09-23 16:36:36 +02:00
Klaas Freitag 0959ceeff2 Disable delete of folder object temparily. 2013-09-23 15:10:42 +02:00
Klaas Freitag 1988c9d8c4 Do complete sync if network was disconnected.
This fixes owncloud/mirall#1007
2013-09-23 15:10:42 +02:00
Klaas Freitag 1eaa1e47fe Be more careful with items in model when deleting rows. 2013-09-23 15:10:42 +02:00
Klaas Freitag 31923b314e Removed left over stuff from refactoring. 2013-09-23 15:10:42 +02:00
Klaas Freitag ee840b62e5 Fix syncEnable in folder and folderman. 2013-09-23 15:10:42 +02:00
Daniel Molkentin 363efaa408 Theming build fix: Icons need shortname 2013-09-20 23:09:41 +02:00
Daniel Molkentin b0beeea95f More fixes related to object destruction on exit
- _logBrowser is not delete on close, call deleteLater
- move writing geometry out of dtor.
- _folderWizard was unused, remove it and all related noops

Hopefully solves #945
2013-09-20 14:18:28 +02:00
Daniel Molkentin d0a4650d69 Settings: calculate sidebar width dynamically
Fixes #1020
2013-09-20 10:40:22 +02:00
Daniel Molkentin ec5a84cf01 Pop up config wizard if no server url is configured.
Fixes #1018.
2013-09-19 17:24:22 +02:00
Daniel Molkentin a057eb8590 Fix focus issue during setup wizard 2013-09-19 14:52:41 +02:00
Daniel Molkentin 6a8753b119 Start only one wizard, delete it when done 2013-09-19 12:11:46 +02:00
Daniel Molkentin 23fab90a31 _tray is a QPointer, not a QScopedPointer 2013-09-18 16:41:37 +02:00
Daniel Molkentin 8fdf9cac6b Try to be more graceful during shutdown
- Do not delete _tray, use deleteLater() via QScropedPointer
- force closing any dialoges that might want to write their
  geometry in aboutToQuit(), before the actual destruction
  of the sync thread, etc starts.

This tries to fix #945
2013-09-18 15:42:35 +02:00
Daniel Molkentin 525d12f5a2 Make "Sync started" message optional
Fixes #934
2013-09-18 14:14:42 +02:00
Daniel Molkentin 15d247a708 Ui::SslErrorDialog belongs within the Mirall namespace 2013-09-18 14:06:23 +02:00
Daniel Molkentin a1d0b85277 Add copyright header to syncfileitem.h
Fixes #993
2013-09-15 22:49:24 +02:00
Daniel Molkentin 5e5a77b040 Fix parameter order 2013-09-15 22:48:12 +02:00
Daniel Molkentin e420ae6942 Folder Wizard: Fix various issues
- Use data role for pathes
- call root dir "ownCloud"
- don't connect() multiple times
- ensure chars like # or ? in path are interpreted as part of the url path segment

Should fix #992
2013-09-15 22:47:35 +02:00
Daniel Molkentin 0be7c0273e Replace forgotton 22px app icon version which was still s/w 2013-09-15 00:48:06 +02:00
Daniel Molkentin 864b7cd41e Merge pull request #998 from owncloud/fixing-mb-1.4
Fixing mb 1.4
2013-09-13 11:11:43 -07:00
Thomas Müller 78c8f13645 fixing testOctetsToString 2013-09-13 17:30:53 +02:00
Thomas Müller c87c456ae0 moving back to 1024 as divider for kB, MB, GB & TB 2013-09-13 15:00:49 +02:00
hefee 94d9b8fb39 Don't ship doc/scripts/README.rst via sphinx 2013-09-13 02:26:21 +02:00
Daniel Molkentin 2dad027001 Do not build org and com theming when building from tar ball
Fixes #989
2013-09-12 12:55:12 +02:00
Daniel Molkentin f97bb240d7 Setting thread priority is only possible after calling start() 2013-09-11 15:52:07 +02:00
Klaas Freitag 80332fb6ab Do not en- or disable the watcher in setSyncEnabled.
The watcher is handled through the start and stop sync hooks in the
folder class. Even if the the folder is disabled and the watcher
fires, the folder does not schedule because it checks first if the
folder is enabled.
2013-09-11 12:30:29 +02:00
Klaas Freitag 287ec2f3df Enable and disable syncing also in the folder objects. 2013-09-11 10:50:03 +02:00
Klaas Freitag eb5824f713 Handle startup network errors correctly. 2013-09-11 10:49:45 +02:00
Klaas Freitag eded901f69 Minor code cleanups- 2013-09-11 10:49:10 +02:00
Daniel Molkentin fd30df82cb Folder Wizard: More sanity checks
Check if a server folder or its parent
is already part of a sync and refuse
to create a sync in this case.

Avoids "recursive syncing"

Fixes #962
2013-09-10 23:38:00 +02:00
Daniel Molkentin d8888432c3 Send basic auth in utf8.
Implies circumventing QAuthenticator and handling
authentication manually again.

Fixes #941
2013-09-10 23:04:10 +02:00
morriswinkler 51712fea53 Update building.rst
eider fix it or add the note here
2013-09-10 12:15:16 +02:00
Daniel Molkentin f597f99198 Wait up to 30 secs before complaining about missing systray
Conflicts:
	src/mirall/utility.cpp

Fixes #949
2013-09-10 11:40:02 +02:00
Klaas Freitag 74ec37f3c7 Use List to handle errors and display multiline. 2013-09-05 19:25:59 +02:00
Daniel Molkentin 05178f0fbf Fix locating translations on linux 2013-09-05 11:06:40 +02:00
Daniel Molkentin 9ce09713b6 1.4.0 final 2013-09-04 11:09:12 +02:00
Klaas Freitag 4fa6faf608 Hide quota and display explanation if no quota info is available. 2013-09-03 14:25:28 +02:00
Klaas Freitag a24ae13d9c Added logging to quota info result slot. 2013-09-03 14:25:28 +02:00
Daniel Molkentin 64dd0d1b45 Consistent look for top-labels 2013-09-03 14:24:34 +02:00
Daniel Molkentin da63b1223c Doc: more polishing
- add description of syncing limitations
- update out-of-date comments

Fixes #788
2013-09-03 12:35:40 +02:00
Jenkins for ownCloud 36f32c2aef [tx-robot] updated from transifex 2013-09-03 06:30:41 -04:00
Daniel Molkentin 063acadc3b Doc: new interface chapter 2013-09-02 19:28:06 +02:00
Klaas Freitag 81c720c05b Remove dots from the end of error messages. 2013-09-02 17:37:16 +02:00
Klaas Freitag edcdcb945a Show the reason why a file was ignored. 2013-09-02 17:25:23 +02:00
Daniel Molkentin 5df6430bb2 Doc: Do not enforce theme when building without submodules 2013-09-02 15:55:03 +02:00
Daniel Molkentin 9a0096d07c Docs: Allow to build with org and com branding 2013-09-02 14:01:15 +02:00
Jenkins for ownCloud 25d33d6057 [tx-robot] updated from transifex 2013-09-01 12:30:19 -04:00
Daniel Molkentin ab4c6247c7 Fix display of "Monochrome icon" setting
The logic was inverse, and there was a typo in the string. Oh my...
2013-08-31 14:14:24 +02:00
Jenkins for ownCloud 1b69dbb38b [tx-robot] updated from transifex 2013-08-30 09:22:37 -04:00
Daniel Molkentin bfdd488b00 Tests: make tests run in parallel 2013-08-29 14:50:55 +02:00
Daniel Molkentin 54c8809bf4 Tests: Fix indentation 2013-08-29 14:50:18 +02:00
Daniel Molkentin 0873665bec Tests: Move all comparisons from QVERIFY to QCOMPARE 2013-08-29 14:48:40 +02:00
Olivier Goffart 02b3033ca3 Use the same convention as on the server to format strings
* use power of 10 SI units
 * use "B" instead of "bytes"
 * use at least 2 significant digit, but no more than one digit after
   the period
2013-08-29 12:06:41 +02:00
Olivier Goffart a27c8ad90c Fix crash in case of error
the QObject::parent() is 0
2013-08-28 21:26:42 +02:00
Daniel Molkentin 18a58f73de Startup: Unity has no proper Systray implementation
...so it can't respond to isSysTrayAvailable()
2013-08-28 15:45:52 +02:00
Daniel Molkentin d1451a3c90 Mac: Use hdiutil attach instead of open during signing 2013-08-28 12:53:34 +02:00
Jenkins for ownCloud 0bef47b2f3 [tx-robot] updated from transifex 2013-08-28 05:24:20 -04:00
Jenkins for ownCloud ccc05d6658 [tx-robot] updated from transifex 2013-08-27 10:23:30 -04:00
Olivier Goffart c15de69156 Reconfigure the proxy when needed 2013-08-27 10:02:59 +02:00
Thomas Müller 8bfb44fd28 Inverting the logic to set the prefix for SYSCONF_INSTALL_DIR 2013-08-26 22:42:17 +02:00
Daniel Molkentin 79d3b84fad Reintroduce workaround for /etc in root if files go to /usr 2013-08-26 21:59:52 +02:00
Daniel Molkentin b97701586e Properly install icons 2013-08-26 21:18:56 +02:00
Daniel Molkentin b120345fe7 Icon file needs to use app_executable as well 2013-08-26 20:54:10 +02:00
Daniel Molkentin ec5c65a530 install correct file 2013-08-26 20:35:56 +02:00
Daniel Molkentin 77e7a1fa8d Fix casing in settings dialog 2013-08-26 20:22:24 +02:00
Daniel Molkentin f6d45b68ef More clear error messages 2013-08-26 20:20:10 +02:00
Daniel Molkentin 24d76a0d75 desktop file == executable 2013-08-26 20:20:10 +02:00
Olivier Goffart c3326efe94 Do not sort the entries in the syc protocol dialog alphabetically
The entries should be sorted chronogically.  But now the QTreeWidget can
only sort them alphabetically by the time,  which is not what we want.
Disalbe the sorting, and always insert the elements in the reverse
order.

Fix #890
2013-08-26 17:27:44 +02:00
Daniel Molkentin c0e056bb84 Only show help if a URL is provided 2013-08-26 14:27:39 +02:00
Jenkins for ownCloud 8a7df36701 [tx-robot] updated from transifex 2013-08-25 18:19:18 -04:00
Jenkins for ownCloud 39ec6b1bb2 [tx-robot] updated from transifex 2013-08-23 19:15:56 -04:00
Daniel Molkentin 30b2406533 Fix windows packaging 2013-08-23 15:37:24 +02:00
Daniel Molkentin 076d5dda0e RC1 2013-08-23 14:35:15 +02:00
Olivier Goffart e78eab46ff Fix saving the geometry of the log browser 2013-08-23 12:41:29 +02:00
Olivier Goffart 19a08f8d5e Make remember the size of the settings dialog
Before, we saved the geometry in the closeEvent which is only called if
the user press the [x] in the title bar.  But it is not called when the
user accept the dialog (by pressing the close button or the enter key)
So save the geometry in the destructor of the dialog instead.

One also must call delete from the Application destructor because it was
leaking
2013-08-23 12:25:16 +02:00
Olivier Goffart c6319117fd Better default size for the setting dialog 2013-08-23 11:59:49 +02:00
Olivier Goffart 4c10ed4ada Remove some entries from the default exclude list.
If the user really want to have those entries excluded it can add them
manually.
But one cannot change the default so if user want the .bak files synced,
he would not be able to do it
2013-08-23 11:17:02 +02:00
Daniel Molkentin b0ab3ca80b Theme: Add documentation after recent changes 2013-08-23 10:36:09 +02:00
Daniel Molkentin 9f89a2fe76 More adjustments around the application name
- libname is now derived from binary name (which is lowercase)
- remove superflouos reimplementation of appName() in owncloud theme
- APPLICATION_SHORTNAME is now optional (and if not set, equals
  APPLICATION_NAME
2013-08-23 10:30:03 +02:00
Daniel Molkentin e386bfb550 fix x-compilation 2013-08-23 00:36:05 +02:00
Jenkins for ownCloud 0189a3f1bd [tx-robot] updated from transifex 2013-08-22 10:35:38 -04:00
Olivier Goffart d3a333e03c Fix the 'copy button' in the protocol log
Fix #863

Also added more padding for the filename because it might be big, and in
case it's not enough, always add at least a space.
2013-08-22 16:20:04 +02:00
Olivier Goffart 04d3e282fb Stop the poll timer when the folder is disabled
No need to request etag every 30 second for disabled folder.

When the folder is re-enabled, the Timer is actived again after the sync
2013-08-22 12:35:28 +02:00
Olivier Goffart 4be5f970d5 Default to no limit upload
We don't want to make the transfer slow by default
2013-08-22 12:26:34 +02:00
Daniel Molkentin 31ceff181e Amendment to last commit 2013-08-22 09:51:35 +02:00
Daniel Molkentin 42abf4101c Honor cmake's install prefix
since the entire ting is so incredibly broken in cmake,
use the approach taken by csync (which emulates the
approach of autotools), to get the directories right.

This mandates changes in the theme, which need discussion
(APPLICATION_SHORTNAME must now equal appName(), and
APPLICATION_NAME should equal appGuiName()).
2013-08-22 09:40:25 +02:00
Daniel Molkentin f09cae74fb Merge pull request #897 from onnozweers/patch-1
Adding "Type=Application" to desktop file (to fix autostart in Ubuntu)
2013-08-21 16:50:25 -07:00
onnozweers 13a6393ec5 Adding "Type=Application" to desktop file (to fix autostart in Ubuntu) 2013-08-21 22:11:02 +02:00
Jenkins for ownCloud ace57f9dd4 [tx-robot] updated from transifex 2013-08-21 07:10:45 -04:00
Daniel Molkentin e5117a98c9 Quota bar: Reduce border width to 1px per request
As requested by Jan
2013-08-21 11:34:49 +02:00
Daniel Molkentin c1f7af7e6f Write desktop file manually, add gnome startup property
Fixes #893
2013-08-21 11:09:56 +02:00
Olivier Goffart b4c116e2a2 Add the new directories comming from the sync in the watcher 2013-08-21 00:45:36 +02:00
118 arquivos alterados com 5877 adições e 4032 exclusões
+1
Ver Arquivo
@@ -1,3 +1,4 @@
.gitmodules
*build*/
*flymake*
CMakeLists.txt.user*
+3
Ver Arquivo
@@ -0,0 +1,3 @@
[submodule "doc/ocdoc"]
path = doc/ocdoc
url = https://github.com/owncloud/documentation
+8 -25
Ver Arquivo
@@ -13,12 +13,16 @@ else ()
include ( ${CMAKE_SOURCE_DIR}/OWNCLOUD.cmake )
endif()
if (NOT DEFINED APPLICATION_SHORTNAME)
set ( APPLICATION_SHORTNAME ${APPLICATION_NAME} )
endif()
include(${CMAKE_SOURCE_DIR}/VERSION.cmake)
configure_file( ${CMAKE_SOURCE_DIR}/src/mirall/version.h.in "${CMAKE_CURRENT_BINARY_DIR}/src/mirall/version.h" )
include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR} "${CMAKE_CURRENT_BINARY_DIR}/src/mirall/")
include(GNUInstallDirs)
include(DefineInstallationPaths)
include(GetGitRevisionDescription)
get_git_head_revision(GIT_REFSPEC GIT_SHA1)
@@ -34,10 +38,8 @@ if (${GIT_SHA1} STREQUAL "GITDIR-NOTFOUND")
endif()
endif()
## stupid, we should upstream this
if("${CMAKE_INSTALL_PREFIX}" STREQUAL "/usr" AND NOT CMAKE_INSTALL_SYSCONFDIR)
set(CMAKE_INSTALL_SYSCONFDIR "/etc")
endif()
set(SYSCONFDIR ${SYSCONF_INSTALL_DIR})
set(DATADIR ${DATA_INSTALL_DIR})
#####
## handle BUILD_OWNCLOUD_OSX_BUNDLE
@@ -83,25 +85,6 @@ set(USE_INOTIFY ${INOTIFY_FOUND})
configure_file(config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)
set(CPACK_SOURCE_IGNORE_FILES
# hidden files
"/\\\\..+$"
# temporary files
"\\\\.swp$"
# backup files
"~$"
# others
"\\\\.#"
"/#"
"/build/"
"/_build/"
# used before
"\\\\.o$"
"\\\\.lo$"
"\\\\.la$"
"Makefile\\\\.in$"
)
include(OwnCloudCPack.cmake)
add_definitions(-DUNICODE)
@@ -123,5 +106,5 @@ endif(UNIT_TESTING)
if(BUILD_OWNCLOUD_OSX_BUNDLE)
configure_file(sync-exclude.lst ${OWNCLOUD_OSX_BUNDLE}/Contents/Resources/sync-exclude.lst COPYONLY)
else()
install( FILES sync-exclude.lst DESTINATION ${CMAKE_INSTALL_SYSCONFDIR} )
install( FILES sync-exclude.lst DESTINATION ${SYSCONFDIR}/${APPLICATION_SHORTNAME} )
endif()
+26 -1
Ver Arquivo
@@ -1,6 +1,28 @@
ChangeLog
=========
version 1.4.0beta1 (release 2013-08-08 ), csync 0.81.0 required
version 1.4.1 (release 2013-09-24 ), csync 0.90.1 required
* Translation and documentation fixes.
* Fixed error display in settings/status dialog, displays multi
line error messages now correctly.
* Wait up to 30 secs before complaining about missing systray
Fixes bug #949
* Fixed utf8 issues with basic auth authentication, fixes bug #941
* Fixed remote folder selector, avoid recursive syncing, fixes bug #962
* Handle and display network problems at startup correctly.
* Enable and disable the folder watcher during syncs correctly.
* Fix setting of thread priority.
* Fixed file size display.
* Fixed various folder wizard issues, bug #992
* Made "Sync started" message optional, fixes bug #934
* Fixed shutdown, avoid crashed config on win32, fixes bug #945
* Pop up config wizard if no server url is configured, fixes bug #1018
* Settings: calculate sidebar width dynamically, fixes bug #1020
* Fixed a crash if sync folders were removed, fixes bug #713
* Do proper resync after network disconnect, fixes bug #1007
* Various minor code fixes
version 1.4.0 (release 2013-09-04 ), csync 0.90.0 required
* New Scheduler: Only sync when there are actual changes in the server
* Add a Settings Dialog, move Proxy Settings there
@@ -19,6 +41,9 @@ version 1.4.0beta1 (release 2013-08-08 ), csync 0.81.0 required
* Add an editor for ingore patterns
* ALlow to flag certain ignore patterns as discardable
* Ensure to ship with all valid translations
* Progress Dialog now preserves the last syncned items across sync runs
* Split Setup Wizard into multiple pages again
* Implement "--logfile -" to log to stdout
* Add preliminary support for Shibboleth authentication
* Linux: Provide more icon sizes
* Linux: Do not trigger notifier on ignored files
+5 -5
Ver Arquivo
@@ -1,9 +1,9 @@
set( APPLICATION_SHORTNAME "owncloud" )
set( APPLICATION_NAME "ownCloud" )
set( APPLICATION_EXECUTABLE "owncloud" )
set( APPLICATION_DOMAIN "owncloud.com" )
set( APPLICATION_VENDOR "ownCloud, Inc" )
set( THEME_CLASS "ownCloudTheme" )
#set( APPLICATION_SHORTNAME ${APPLICATION_NAME} )
set( APPLICATION_EXECUTABLE "owncloud" )
set( APPLICATION_DOMAIN "owncloud.com" )
set( APPLICATION_VENDOR "ownCloud, Inc" )
set( THEME_CLASS "ownCloudTheme" )
set( APPLICATION_REV_DOMAIN "com.owncloud.desktopclient" )
set( WIN_SETUP_BITMAP_PATH "${CMAKE_SOURCE_DIR}/admin/win/nsi" )
# set( THEME_INCLUDE "${OEM_THEME_DIR}/mytheme.h" )
+2 -2
Ver Arquivo
@@ -1,6 +1,6 @@
set( VERSION_MAJOR 1 )
set( VERSION_MINOR 4 )
set( VERSION_PATCH 0 )
set( VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}${VERSION_SUFFIX}beta2")
set( VERSION_PATCH 1 )
set( VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}${VERSION_SUFFIX}")
set( SOVERSION 0 )
+1 -2
Ver Arquivo
@@ -10,8 +10,7 @@ mount="/Volumes/$(basename $src_dmg|cut -d"-" -f1)"
test -e $tmp_dmg && rm -rf $tmp_dmg
hdiutil convert $src_dmg -format UDRW -o $tmp_dmg
open $tmp_dmg
sleep 12s
hdiutil attach $tmp_dmg
pushd $mount
codesign -s "$identity" $mount/*.app
popd
+108
Ver Arquivo
@@ -0,0 +1,108 @@
if (UNIX)
# Suffix for Linux
SET(LIB_SUFFIX
CACHE STRING "Define suffix of directory name (32/64)"
)
SET(EXEC_INSTALL_PREFIX
"${CMAKE_INSTALL_PREFIX}"
CACHE PATH "Base directory for executables and libraries"
)
SET(SHARE_INSTALL_PREFIX
"${CMAKE_INSTALL_PREFIX}/share"
CACHE PATH "Base directory for files which go to share/"
)
SET(DATA_INSTALL_PREFIX
"${SHARE_INSTALL_PREFIX}/${APPLICATION_SHORT_NAME}"
CACHE PATH "The parent directory where applications can install their data")
# The following are directories where stuff will be installed to
SET(BIN_INSTALL_DIR
"${EXEC_INSTALL_PREFIX}/bin"
CACHE PATH "The ${APPLICATION_SHORT_NAME} binary install dir (default prefix/bin)"
)
SET(SBIN_INSTALL_DIR
"${EXEC_INSTALL_PREFIX}/sbin"
CACHE PATH "The ${APPLICATION_SHORT_NAME} sbin install dir (default prefix/sbin)"
)
SET(LIB_INSTALL_DIR
"${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}"
CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is prefix/lib)"
)
SET(LIBEXEC_INSTALL_DIR
"${EXEC_INSTALL_PREFIX}/libexec"
CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is prefix/libexec)"
)
SET(PLUGIN_INSTALL_DIR
"${LIB_INSTALL_DIR}/${APPLICATION_SHORT_NAME}"
CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is prefix/lib/${APPLICATION_SHORT_NAME})"
)
SET(INCLUDE_INSTALL_DIR
"${CMAKE_INSTALL_PREFIX}/include"
CACHE PATH "The subdirectory to the header prefix (default prefix/include)"
)
SET(DATA_INSTALL_DIR
"${DATA_INSTALL_PREFIX}"
CACHE PATH "The parent directory where applications can install their data (default prefix/share/${APPLICATION_SHORT_NAME})"
)
SET(HTML_INSTALL_DIR
"${DATA_INSTALL_PREFIX}/doc/HTML"
CACHE PATH "The HTML install dir for documentation (default data/doc/html)"
)
SET(ICON_INSTALL_DIR
"${DATA_INSTALL_PREFIX}/icons"
CACHE PATH "The icon install dir (default data/icons/)"
)
SET(SOUND_INSTALL_DIR
"${DATA_INSTALL_PREFIX}/sounds"
CACHE PATH "The install dir for sound files (default data/sounds)"
)
SET(LOCALE_INSTALL_DIR
"${SHARE_INSTALL_PREFIX}/locale"
CACHE PATH "The install dir for translations (default prefix/share/locale)"
)
SET(XDG_APPS_DIR
"${SHARE_INSTALL_PREFIX}/applications/"
CACHE PATH "The XDG apps dir"
)
SET(XDG_DIRECTORY_DIR
"${SHARE_INSTALL_PREFIX}/desktop-directories"
CACHE PATH "The XDG directory"
)
IF(NOT "${EXEC_INSTALL_PREFIX}" STREQUAL "/usr")
SET(SYSCONFDIR_INSTALL_PREFIX "${EXEC_INSTALL_PREFIX}")
endif()
SET(SYSCONF_INSTALL_DIR
"${SYSCONFDIR_INSTALL_PREFIX}/etc"
CACHE PATH "The ${APPLICATION_SHORT_NAME} sysconfig install dir (default prefix/etc)"
)
SET(MAN_INSTALL_DIR
"${SHARE_INSTALL_PREFIX}/man"
CACHE PATH "The ${APPLICATION_SHORT_NAME} man install dir (default prefix/man)"
)
SET(INFO_INSTALL_DIR
"${SHARE_INSTALL_PREFIX}/info"
CACHE PATH "The ${APPLICATION_SHORT_NAME} info install dir (default prefix/info)"
)
endif (UNIX)
if (WIN32)
# Same same
set(SHARE_INSTALL_PREFIX "share" CACHE PATH "-")
set(BIN_INSTALL_DIR "." CACHE PATH "-")
set(SBIN_INSTALL_DIR "." CACHE PATH "-")
set(LIB_INSTALL_DIR "lib" CACHE PATH "-")
set(INCLUDE_INSTALL_DIR "include" CACHE PATH "-")
set(PLUGIN_INSTALL_DIR "plugins" CACHE PATH "-")
set(HTML_INSTALL_DIR "doc/HTML" CACHE PATH "-")
set(ICON_INSTALL_DIR "." CACHE PATH "-")
set(SOUND_INSTALL_DIR "." CACHE PATH "-")
set(LOCALE_INSTALL_DIR "lang" CACHE PATH "-")
set(SYSCONF_INSTALL_DIR "config" CACHE PATH "-")
set(MAN_INSTALL_DIR "man" CACHE PATH "-")
endif (WIN32)
+1 -1
Ver Arquivo
@@ -1,6 +1,6 @@
;ownCloud installer script.
!define APPLICATION_SHORTNAME "@APPLICATION_SHORTNAME@"
!define APPLICATION_SHORTNAME "@APPLICATION_EXECUTABLE@"
!define APPLICATION_NAME "@APPLICATION_NAME@"
!define APPLICATION_VENDOR "@APPLICATION_VENDOR@"
!define APPLICATION_EXECUTABLE "@APPLICATION_EXECUTABLE@.exe"
+7
Ver Arquivo
@@ -8,4 +8,11 @@
#cmakedefine APPLICATION_DOMAIN @APPLICATION_DOMAIN@
#cmakedefine THEME_CLASS @THEME_CLASS@
#cmakedefine THEME_INCLUDE @THEME_INCLUDE@
#cmakedefine APPLICATION_NAME "@APPLICATION_NAME@"
#cmakedefine APPLICATION_SHORTNAME "@APPLICATION_SHORTNAME@"
#cmakedefine APPLICATION_EXECUTABLE "@APPLICATION_EXECUTABLE@"
#cmakedefine SYSCONFDIR "@SYSCONFDIR@"
#cmakedefine DATADIR "@DATADIR@"
#endif
+18 -1
Ver Arquivo
@@ -22,6 +22,11 @@ if(SPHINX_FOUND)
add_custom_target(doc DEPENDS doc-html doc-man COMMENT "Building documentation...")
endif(WITH_DOC)
if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/ocdoc/_shared_assets")
add_dependencies(doc doc-html-org)
add_dependencies(doc doc-html-com)
endif()
if(PDFLATEX_FOUND)
# if this still fails on Debian/Ubuntu, run
# apt-get install texlive-latex-recommended texlive-latex-extra texlive-fonts-recommended
@@ -56,7 +61,19 @@ if(SPHINX_FOUND)
-q -c . -b html
-d ${SPHINX_CACHE_DIR}/html
${CMAKE_CURRENT_SOURCE_DIR}
${SPHINX_HTML_DIR} )
${SPHINX_HTML_DIR}/unthemed )
add_custom_target( doc-html-org ${SPHINX_EXECUTABLE}
-q -c . -b html
-d ${SPHINX_CACHE_DIR}/html
-D html_theme=owncloud_org
${CMAKE_CURRENT_SOURCE_DIR}
${SPHINX_HTML_DIR}/org )
add_custom_target( doc-html-com ${SPHINX_EXECUTABLE}
-q -c . -b html
-d ${SPHINX_CACHE_DIR}/html
-D html_theme=owncloud_com
${CMAKE_CURRENT_SOURCE_DIR}
${SPHINX_HTML_DIR}/com )
add_custom_target( doc-man ${SPHINX_EXECUTABLE}
-q -c . -b man
-d ${SPHINX_CACHE_DIR}/man
+37
Ver Arquivo
@@ -0,0 +1,37 @@
Setting up an Account
=====================
If no account has been configured, ownCloud Client will automatically assist
you in connecting to your ownCloud Server after the application has been
started.
As a first step, specify the URL to your Server, just
like you would when you open your ownCloud instance inside a browser.
.. image:: images/wizard_url.png
:scale: 50 %
.. note:: Make sure to use ``https://`` if the server supports it. Otherwise,
your password and all data will be transferred to the server unencrypted.
This makes it easy for third parties to intercept your communication, and
getting hold of your password!
Next, you are prompted for your username and password. Again, use the same
credentials that you would use to log on via the web interface.
.. image:: images/wizard_user.png
:scale: 50 %
Finally, choose the folder that ownCloud Client is supposed to sync the
contents of your ownCloud account with. By default, this is a folder
called `ownCloud`, which will reside in your home directory.
.. image:: images/wizard_targetfolder.png
:scale: 50 %
After pressing `Connect`, ownCloud Client will commence with the syncing
process. The next screen will give you the opportunity to review your
settings:
.. image:: images/wizard_overview.png
:scale: 50 %
+14
Ver Arquivo
@@ -0,0 +1,14 @@
Advanced Usage
==============
.. index:: Advanced Usage
Options
-------
.. index:: command line switches, command line, options, parameters
.. include:: options.rst
Config File
-----------
.. index:: config file
.. include:: conffile.rst
+57 -38
Ver Arquivo
@@ -1,5 +1,6 @@
Architecture
============
Appendix B: Architecture
========================
.. index:: architecture
The ownCloud project provides desktop sync clients to synchronize the
@@ -11,11 +12,10 @@ csync was written to synchronize with ownClouds built-in WebDAV server.
The ownCloud sync client is based on a tool called mirall initially written by
Duncan Mac Vicar. Later Klaas Freitag joined the project and enhanced it to work
with ownCloud server. Both mirall and ownCloud Client (oCC) build from the same
source, currently hosted in the ownCloud source repo on gitorious.
with ownCloud server.
oCC is written in C++ using the `Qt Framework`_. As a result oCC runs on the
three important platforms Linux, Windows and MacOS.
ownCloud Client is written in C++ using the `Qt Framework`_. As a result, the
ownCloud Client runs on the three important platforms Linux, Windows and MacOS.
.. _csync: http://www.csync.org
.. _`Qt Framework`: http://www.qt-project.org
@@ -23,8 +23,8 @@ three important platforms Linux, Windows and MacOS.
The Sync Process
----------------
First it is important to recall what syncing is. Syncing tries to keep the files
on both repositories the same. That means if a file is added to one repository
First it is important to recall what syncing is: It tries to keep the files
on two repositories the same. That means if a file is added to one repository
it is going to be copied to the other repository. If a file is changed on one
repository, the change is propagated to the other repository. Also, if a file
is deleted on one side, it is deleted on the other. As a matter of fact, in
@@ -34,10 +34,10 @@ server is always master.
This is the major difference to other systems like a file backup where just
changes and new files are propagated but files never get deleted.
The oCC checks both repositories for changes frequently after a certain time
span. That is refered to as a sync run. In between the local repository is
monitored by a file system monitor system that starts a sync run immediately
if something was edited, added or removed.
The ownCloud Client checks both repositories for changes frequently after a
certain time span. That is refered to as a sync run. In between the local
repository is monitored by a file system monitor system that starts a sync run
immediately if something was edited, added or removed.
Sync by Time versus ETag
------------------------
@@ -62,16 +62,18 @@ machines.
Since this strategy is rather fragile without NTP, ownCloud 4.5 introduced a
unique number, which changes whenever the file changes. Although it is a unique
value, it is not a hash of the file, but a randomly chosen number, which it will
transmit in the Etag_ field. Since the file number is guaranteed to change if the
file changes, it can now be used to determine if one of the files has changed.
transmit in the Etag_ field. Since the file number is guaranteed to change if
the file changes, it can now be used to determine if one of the files has
changed.
.. note:: oCC 1.1 and newer require file ID capabilities on the ownCloud server,
hence using them with a server earlier than 4.5.0 is not supported.
.. note:: ownCloud Client 1.1 and newer require file ID capabilities on the
ownCloud server, hence using them with a server earlier than 4.5.0 is
not supported.
Before the 1.3.0 release of the client the sync process might create faux conflict
files if time deviates. The original and the conflict files only differed in the
timestamp, but not in content. This behaviour was changed towards a binary check
if the files are different.
Before the 1.3.0 release of the client the sync process might create faux
conflict files if time deviates. The original and the conflict files only
differed in the timestamp, but not in content. This behaviour was changed
towards a binary check if the files are different.
Just like files, directories also hold a unique id, which changes whenever
one of the contained files or directories gets modified. Since this is a
@@ -105,7 +107,8 @@ are involved and one of them is not in sync with NTP time.
.. _Etag: http://en.wikipedia.org/wiki/HTTP_ETag
Comparison and Conflict Cases
----------------------------
-----------------------------
In a sync run the client first has to detect if one of the two repositories have
changed files. On the local repository, the client traverses the file
tree and compares the modification time of each file with the value it was
@@ -118,25 +121,41 @@ For the remote (ie. ownCloud) repository, the client compares the ETag of each
file with it's previous value. Again the previous value is queried from the
database. If the ETag is still the same, the file has not changed.
So what happens if a file has changed on both, the local and the remote repository
since the last sync run? That means it can not easily be decided which version
of the file is the one that should be used. Moreover, changes to any side must
not be lost. That is called the conflict case and the client solves it by creating
a conflict file of the older of the two files and save the newer one under the
original file name. Conflict files are always created on the client and never on
the server. The conflict file has the same name as the original file appended
with the timestamp of the conflict detection.
In case a file has changed on both, the local and the remote repository since
the last sync run, it can not easily be decided which version of the file is
the one that should be used. However, changes to any side must not be lost.
That is called a **conflict case**. The client solves it by creating a conflict
file of the older of the two files and save the newer one under the original
file name. Conflict files are always created on the client and never on the
server. The conflict file has the same name as the original file appended with
the timestamp of the conflict detection.
.. _ignored-files-label:
Ignored Files
-------------
ownCloud Client will refuse to sync the following files:
* Files matched by one of the pattern in :ref:`ignoredFilesEditor-label`
* Files containing characters that do not work on certain file systems.
Currently, these characters are: `\, :, ?, *, ", >, <, |`
* Files starting in ``.csync_journal.db`` (reserved for journalling)
The Sync Journal
----------------
The client stores the ETag number in a per-directory database, called the journal.
It is located in the application directory (until version 1.1) or as a hidden file
right in the directory to be synced (later versions).
If the journal database gets removed, oCC's CSync backend will rebuild the database
by comparing the files and their modification times. Thus it should be made sure
that both server and client synchronized to NTP time before restarting the client
after a database removal.
The client stores the ETag number in a per-directory database,
called the journal. It is a hidden file right in the directory
to be synced.
The oCC also provides a button in the Settings Dialog that allows to "reset" the
journal. That can be used to recreate the journal database.
If the journal database gets removed, ownCloud Client's CSync backend will
rebuild the database by comparing the files and their modification times. Thus
it should be made sure that both server and client synchronized with NTP time
before restarting the client after a database removal.
Pressing ``F5`` in the Account Settings Dialog that allows to "reset" the
journal. That can be used to recreate the journal database. Use this only
if advised to do so by the developer or support staff.
+10 -3
Ver Arquivo
@@ -1,5 +1,7 @@
Building the Client
===================
.. _building-label:
Appendix A: Building the Client
===============================
This section explains how to build the ownCloud Client from source
for all major platforms. You should read this section if you want
@@ -34,9 +36,14 @@ its own repository which contains non-standard recipes. Add it with::
Next, install the missing dependencies::
brew install $(brew deps ocsync)
brew install $(brew deps ocsync)
brew install $(brew deps mirall)
bug:
iniparser is not provideed by $(brew deps ocsync)
fix with brew install iniparser
To build mirall and csync, follow the `generic build instructions`_.
.. note::
+4 -4
Ver Arquivo
@@ -28,7 +28,7 @@ import sys, os
extensions = ['sphinx.ext.todo']
# Add any paths that contain templates here, relative to this directory.
#templates_path = ['templates']
templates_path = ['@CMAKE_CURRENT_SOURCE_DIR@/ocdoc/_shared_assets/templates']
# The suffix of source filenames.
source_suffix = '.rst'
@@ -64,7 +64,7 @@ release = '@VERSION@'
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
exclude_patterns = ['_build']
exclude_patterns = ['_build','scripts/*']
# The reST default role (used for this markup: `text`) to use for all documents.
#default_role = None
@@ -95,7 +95,7 @@ pygments_style = 'sphinx'
#html_theme_options = {}
# Add any paths that contain custom themes here, relative to this directory.
#html_theme_path = ['themes']
html_theme_path = ['@CMAKE_CURRENT_SOURCE_DIR@/ocdoc/_shared_assets/themes']
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
@@ -120,7 +120,7 @@ html_short_title = "Client Manual"
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
#html_static_path = ['static']
html_static_path = ['@CMAKE_CURRENT_SOURCE_DIR@/ocdoc/_shared_assets/static']
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
# using the given strftime format.
+2 -1
Ver Arquivo
@@ -4,8 +4,8 @@ Glossary
.. glossary::
:sorted:
ownCloud Sync Client
ownCloud Client
oCC
Name of the official ownCloud syncing client for desktop, which runs on
Windows, Mac OS X and Linux. It is based Mirall, and uses the CSync
sync engine for synchronization with the ownCloud server.
@@ -23,6 +23,7 @@ Glossary
exist in the client directory.
unique id
ETag
ID assigned to every file starting with ownCloud server 4.5 and submitted
via the HTTP ``Etag``. Used to check if files on client and server have
changed.
Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 45 KiB

Arquivo binário não exibido.

Depois

Largura:  |  Altura:  |  Tamanho: 1.3 KiB

Arquivo binário não exibido.

Depois

Largura:  |  Altura:  |  Tamanho: 48 KiB

Arquivo binário não exibido.

Depois

Largura:  |  Altura:  |  Tamanho: 18 KiB

Arquivo binário não exibido.

Depois

Largura:  |  Altura:  |  Tamanho: 72 KiB

Arquivo binário não exibido.

Depois

Largura:  |  Altura:  |  Tamanho: 50 KiB

Arquivo binário não exibido.

Depois

Largura:  |  Altura:  |  Tamanho: 59 KiB

Arquivo binário não exibido.

Depois

Largura:  |  Altura:  |  Tamanho: 168 KiB

Arquivo binário não exibido.

Depois

Largura:  |  Altura:  |  Tamanho: 40 KiB

Arquivo binário não exibido.

Depois

Largura:  |  Altura:  |  Tamanho: 39 KiB

Arquivo binário não exibido.

Depois

Largura:  |  Altura:  |  Tamanho: 39 KiB

Arquivo binário não exibido.

Depois

Largura:  |  Altura:  |  Tamanho: 37 KiB

+5 -2
Ver Arquivo
@@ -6,8 +6,11 @@ Contents
.. toctree::
:maxdepth: 2
install
usage
introduction
accountsetup
visualtour
advancedusage
building
architecture
troubleshooting
-36
Ver Arquivo
@@ -1,36 +0,0 @@
Installation
============
General
-------
The latest version of ownCloud client can be obtained at
http://owncloud.org/sync-clients/.
Windows
-------
ownCloud client for Windows is provided as a NSIS-based setup file for
machine-wide install.
Mac OS X
--------
Installing the ownCloud client on your Mac follows the normal app installation
pattern:
1. Download the installation file Click ownCloud-x.y.z.dmg, a window with the
2. ownCloud icon opens In that window, drag the ownCloud application into the
3. Applications folder on the right hand side From Applications, choose
ownCloud
Linux
------
The ownCloud client is provided as in a convenient repository for a wide range
of popular Linux distributions. If you want to build the sources instead.
Supported distributions are CentOS/RHEL, Fedora, SLES, openSUSE, Ubuntu and
Debian.
To support other distributions, a source build is required.
+37
Ver Arquivo
@@ -0,0 +1,37 @@
Introduction
============
This is the documentation for the ownCloud Sync Client, also referred to as
the ownCloud Client.
The ownCloud Sync Client is a desktop program you install on your computer.
Specify one ore more directories on the local machine to sync your ownCloud
server, and always have your latest files wherever you are. Make a change to the
files on one computer, it will flow across the others using these desktop sync
clients.
ownCloud Client is available for Windows, Mac OS X and various Linux
distributions. See below for details on how to obtain the Client.
Obtaining the Client
--------------------
The latest version of the ownCloud Client can be obtained at
http://owncloud.org/sync-clients/.
ownCloud client for **Windows** is provided as a NSIS-based setup file for
machine-wide install. Installing the ownCloud client on **Mac OS** follows
the normal app bundle installation pattern:
1. Download the installation file: Click ``ownCloud-x.y.z.dmg``, a window with
the ownCloud icon opens.
2. In that window, drag the ownCloud application into the ``Applications``
folder.
3. On the right hand side From ``Applications``, choose ``ownCloud``.
The ownCloud Client is also provided as in a convenient repository for a wide
range of popular **Linux distributions**. If you want to build the sources
instead.
Supported distributions are Fedora, openSUSE, Ubuntu and Debian.
To support other distributions, a is required, see :ref:`building-label`
Submódulo
+1
Submodule doc/ocdoc added at 2c3e584b23
-3
Ver Arquivo
@@ -15,9 +15,6 @@ ownCloud Client supports the following command line switches:
``--logflush``
flush the log file after every write.
``--monoicons``
Use black/white pictograms for systray.
``--confdir`` `<dirname>`
Use the given configuration directory.
+19 -6
Ver Arquivo
@@ -1,5 +1,5 @@
Troubleshooting
===============
Appendix C: Troubleshooting
===========================
If the client fails to start syncing it basically can have two
basic reasons: Either the server setup has a problem or the client
@@ -55,6 +55,12 @@ ownCloud is not shared with other syncing apps.
not be attempted. In the worst case, doing so can result in data
loss.
If some files do not get take a look at the sync protocol. Some files are
automatically automatically being ignored because they are system files,
others get ignored because their file name contains characters that cannot
be represented on certain file systems. See :ref:`_ignored-files-label` for
details.
If you are operating your own server and use the local storage backend (the
default), make sure that ownCloud has exclusive access to the directory.
@@ -65,13 +71,15 @@ If you are using a different backend, you can try to exclude a bug in the
backend by reverting to the local backend.
Logfiles
========
--------
Doing effective debugging requires to provide as much as relevant logs as
possible. The log output can help you with tracking down problem, and if you
report a bug, you're advised to include the output.
:Client Logfile:
Client Logfile
~~~~~~~~~~~~~~
Start the client with ``--logwindow``. That opens a window providing a view
on the current log. It provides a Save button to let you save the log to a
file.
@@ -97,11 +105,14 @@ given expiry period.
For example, for a long running test where you intend to keep the log data of the
last two days, this would be the command line:
```
owncloud --logdir /tmp/owncloud_logs --logexpire 48
```
:ownCloud server Logfile:
ownCloud server Logfile
~~~~~~~~~~~~~~~~~~~~~~~
The ownCloud server maintains an ownCloud specific logfile as well. It can and
must be enabled through the ownCloud Administration page. There you can adjust
the loglevel. It is advisable to set it to a verbose level like ``Debug`` or
@@ -110,7 +121,9 @@ the loglevel. It is advisable to set it to a verbose level like ``Debug`` or
The logfile can be viewed either in the web interface or can be found in the
filesystem in the ownCloud server data dir.
:Webserver Logfiles:
Webserver Logfiles
~~~~~~~~~~~~~~~~~~
Also, please take a look at your webservers error log file to check if there
are problems. For Apache on Linux, the error logs usually can be found at
``/var/log/apache2``. A file called ``error_log`` shows errors like PHP code
-95
Ver Arquivo
@@ -1,95 +0,0 @@
Usage
=====
.. index:: usage, client sync usage
To start ownCloud Client, click on the desktop icon or start it from the
application menu. In the system tray, an ownCloud icon appears.
.. index:: start application
Overview
--------
ownCloud is represented by an icon in the Desktop's system tray, also known
as notification area.
The clients menu is accessed with a right click (Windows, Linux) or left click
(Mac OS).
The status of the current sync can be observed in the Status dialog, available
trough the ``Open status...`` option. On Windows, a left click on the tray icon
also opens the status dialog.
.. note:: Until the intial setup has finished, the Connection Wizard will be
shown instead when left-clicking on Windows.
The dialog provides an overview on the configured sync folders and allows to add
and remove more sync folder connections as well as pausing a sync connection.
Changing Your Password and Account Settings
-------------------------------------------
In the ``Settings`` Dialog, choose ``Account`` -> ``Modify Account``. It will open
Setup Wizard, which next to reconfiguring your connection to use a different
user or server also will allow to change the password for the local account,
or to switch from HTTP to HTTPS.
Setting up a Proxy
------------------
By default, the configured system proxy will be picked up. This may not be
working reliably on some Linux distributions, as only the ``http_proxy``
variable gets picked up. You can configure a proxy different from your
system default in the ``Network`` section of the ``Settings`` dialog.
The default settings assume an HTTP proxy, which is the typical use case.
If you require SOCKS 5 proxy, pick ``SOCKS5 proxy`` instead of ``HTTP(S) proxy``
from the drop down menu. SOCKS 5 proxies are typically provided by some
SSH implementations, for instance OpenSSH's ``-D`` parameter. This is
useful for scenarios where SSH is employed to securely tunnel a client
to the network running the ownCloud server.
Limiting Bandwidth
------------------
Starting with Version 1.4, the Client provides bandwidth limiter.
This option can be found in the ``Network`` section of the
``Settings Dialog``.
You will find two settings for ``Download Bandwidth`` and
``Upload Bandwidth``.
Upload Bandwidth
~~~~~~~~~~~~~~~~
The default is to automatically limit the upload. The rationale
for this default is that typically, Computers and laptops are
not directly connected to the server, but via a Cable Modems
or DSL lines, which provide significantly more downstream than
upstream bandwith. Sataurating the upstream bandwidth would
interfere with other applications, especially Voice-Over-IP or
Games.
The automatic limiter will throttle the speed to about 75%
of the available upstream bandwidth. If you are communicating
with the server via a fast, symetric connection, you can set the
Limiter to ``No Limit`` instead. If want a stronger limitation,
choose ``Limit to`` and specify a limit manually.
Download Bandwidth
~~~~~~~~~~~~~~~~~~
Because the download bandwidth is usually no concern, it is not
automatically limited. Should you find that the Client is taking
up too much bandwidth, you can manually specify a limit (in KB).
Options
-------
.. index:: command line switches, command line, options, parameters
.. include:: options.rst
Config File
-----------
.. index:: config file
.. include:: conffile.rst
+178
Ver Arquivo
@@ -0,0 +1,178 @@
Visual Tour
===========
.. index:: visual tour, usage
ownCloud Client stays in the background, and is visible as an
icon in your system tray (Windows, KDE), status bar (Mac OS X)
or notification area (Ubuntu), like so:
.. image:: images/icon.png
If a setup is still required, it will open the setup. Otherwise, the
main menu is opened, which provides several options and displays
progress information:
.. image:: images/menu.png
Here is an explanation of the individual items in the menu:
* ``Open ownCloud in browser``: Opens the ownCloud web interface
* ``Open folder 'ownCloud'``: Opens the local folder. If you have
defined multiple sync targets, you should see multiple entries
here.
* **Disk space indicator**: Shows how much space is used up on the server.
* Operation indicator: Shows the status of the current sync process, or
``Up to date`` if server and client are in sync.
* **Recent Changes**: shows the last six files modified by sync operations,
and provides access to the Sync Protocol, which lists all changes
since the last restart of ownCloud Client.
* ``Settings...``: provides access to the settings menu.
* ``Help``: Opens a browser to display this help.
* ``Quit ownCloud``: Quits ownCloud, ending a currently running sync run.
The settings dialog is split up in three categories: ``Account Settings``,
``General Settings`` and ``Network Settings``:
Account Settings
~~~~~~~~~~~~~~~~
.. index:: account settings, user, password, Server URL
The ``Account Settings`` tab provides an executive summary about the synced
folders in your account and allows to modify them. It also provides a more
detailed report about the storage usage. Finally, it allows to change
the files that ownCloud Client should ignore (for details, see the
``Ignored Files Editor`` section below), and to modify various aspects
of the current account settings, such as user name, password and server URL.
.. image:: images/settings_account.png
:scale: 50 %
General Settings
~~~~~~~~~~~~~~~~
.. index:: general settings, auto start, startup, desktop notifications
The tab provides several useful options:
.. image:: images/settings_general.png
:scale: 50 %
* **Launch on System Startup**: This option is automatically activated
once a user has conimaged his account. Unchecking the box will cause
ownCloud client to not launch on startup for a particular user.
* **Show Desktop Nofications**: Do not show bubble notifications whenever
a set of sync operations has been performed.
* **Use Monochrome Icons**: Use less obstrusive icons. Especially useful
on Mac OS.
The acout menu provides information about authors as well as detailed
information about the build conditions. Those are particularly valuable
when filing a bug report.
Network Settings
~~~~~~~~~~~~~~~~
.. index:: proxy settings, SOCKS, bandwith, throttling, limiting
This tab consollidates ``Proxy Settings`` and ``Bandwith Limiting``:
.. image:: images/settings_network.png
:scale: 50 %
Proxy Settings
^^^^^^^^^^^^^^
* ``No Proxy``: Check this if ownCloud Client should circumvent the default
proxy conimaged on the system.
* ``Use system proxy``: Default, will follow the systems proxy settings.
On Linux, this will only pick up the value of the variable ``http_proxy``.
* ``Specify proxy manually as``: Allows to specify custom proxy settings.
If you require to go through a HTTP(S) proxy server such as Squid or Microsoft
Forefront TMG, pick ``HTTP(S)``. ``SOCKSv5`` on the other hand is particulary
useful in special company LAN setups, or in combination with the OpenSSH
dynamic application level forwarding feature (see ``ssh -D``).
* ``Host``: Enter the host name or IP address of your proxy server, followed
by the port number. HTTP proxies usually listen on Ports 8080 (default) or
3128. SOCKS server usually listen on port 1080.
* ``Proxy Server requires authentication``: Should be checked if the proxy
server does not allow anonymous usage. If you check this option, you must
provide username and password in the fields below, or ownless Cloud will no
longer be able to connect successfully.
Bandwidth Limiting
^^^^^^^^^^^^^^^^^^
The ``Download Bandwidth`` (i.e. the bandwidth available for data flowing
from the ownCloud Server to the client) can be either ``Unlimited``
(the default), or limited to a custom value, specified in bytes
The ``Upload Bandwith`` (i.e. the bandwith available for data flowing
from the ownCloud Client to the server) additionally has the option
to ``Limit automatically``: When this option is checked, the ownCloud
Client will surrender available upstream bandwith to other applications.
Use this option if you expirience problems with real time communication,
such as Skype or other VoIP software, in conjunction with ownCloud Client.
This is commonly the case with asymmetric internet connection, such as
certain DSL lines with very limited upstream capacity.
ownCloud Client will pick up changes immediately, but ongoing operations
will finish using the old settings.
The Sync Protocol
~~~~~~~~~~~~~~~~~
.. index:: sync protocol
The ``Sync Protocol`` window, which can be invoked from either from the main
menu (``Recent Changes`` -> ``Details...``) or the ``Account Settings``
(``Info`` button), will provide you with an in-depth summary of the recent
sync activity. It will also show files that have not been synched (ignored
files). Those are ignored either because they are listed in the ignored
files list (see ``Ignored Files Editor`` section below), or because they
cannot be synced in a cross-platform manner because they contain special
characters that cannot be stored on certain file systems.
.. image:: images/sync_protocol.png
:scale: 50 %
.. _ignoredFilesEditor-label:
The Ignored Files Editor
~~~~~~~~~~~~~~~~~~~~~~~~
.. index:: ignored files, exclude files, pattern
The ignored files editor allows adding patterns for files or directories
that should be excluded from the sync process. Next to normal characters,
wildcards can be used to match an arbitrary number of characters, designated
by an asterisk (``*``) or a single character, designated by a question mark
(``?``).
Global defaults cannot be directly modified within the editor. Hovering
with the mouse will reveal the location of the global exclude definition
file.
In addition to this list, ownCloud Client always excludes files with
characters that cannot be synched down to other file systems,
see :ref:`ignored-files-label`.
.. note:: Modifying the global exclude definition file might render the
client unusable or cause undesired behavior.
.. note:: Custom entries are currently not validated for syntactical
correctness by the editor, but might fail to load correctly.
.. image:: images/ignored_files_editor.png
:scale: 50%
Examples:
^^^^^^^^^
+-----------+------------------------------+
| Pattern | Matches |
+===========+==============================+
| ``~$*`` | ``~$foo``, ``~$example.doc`` |
+-----------+------------------------------+
| ``fl?p`` | ``flip``, ``flap`` |
+-----------+------------------------------+
+2 -2
Ver Arquivo
@@ -4,5 +4,5 @@ Type=Application
Exec=@APPLICATION_EXECUTABLE@
Name=@APPLICATION_NAME@ desktop sync client
GenericName=Folder Sync
Icon=@APPLICATION_SHORTNAME@
Keywords=@APPLICATION_NAME@;syncing;file;sharing
Icon=@APPLICATION_EXECUTABLE@
Keywords=@APPLICATION_NAME@;syncing;file;sharing;
+16 -9
Ver Arquivo
@@ -11,7 +11,7 @@ else()
set(theme_dir ${CMAKE_CURRENT_SOURCE_DIR}/../theme)
endif()
set(synclib_NAME ${APPLICATION_SHORTNAME}sync)
set(synclib_NAME ${APPLICATION_EXECUTABLE}sync)
set(mirall_UI
mirall/folderwizardsourcepage.ui
@@ -168,8 +168,8 @@ if(NOT BUILD_OWNCLOUD_OSX_BUNDLE)
)
if(NOT WIN32)
configure_file(${CMAKE_SOURCE_DIR}/mirall.desktop.in
${CMAKE_CURRENT_BINARY_DIR}/${APPLICATION_SHORTNAME}.desktop)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${APPLICATION_SHORTNAME}.desktop DESTINATION share/applications )
${CMAKE_CURRENT_BINARY_DIR}/${APPLICATION_EXECUTABLE}.desktop)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${APPLICATION_EXECUTABLE}.desktop DESTINATION share/applications )
endif()
else()
install(TARGETS ${synclib_NAME} DESTINATION ${OWNCLOUD_OSX_BUNDLE}/Contents/MacOS)
@@ -254,7 +254,15 @@ set( final_src
include( AddAppIconMacro )
set(ownCloud_old ${ownCloud})
kde4_add_app_icon( ownCloud "${theme_dir}/colored/${APPLICATION_SHORTNAME}-icon*.png")
# set an icon_app_name. For historical reasons we can not use the
# application_shortname for ownCloud but must rather set it manually.
if ( EXISTS ${OEM_THEME_DIR}/OEM.cmake )
set(ICON_APP_NAME ${APPLICATION_SHORTNAME})
else()
set(ICON_APP_NAME "owncloud")
endif()
kde4_add_app_icon( ownCloud "${theme_dir}/colored/${ICON_APP_NAME}-icon*.png")
list(APPEND final_src ${ownCloud})
set(ownCloud ${ownCloud_old})
@@ -262,16 +270,15 @@ if(NOT BUILD_OWNCLOUD_OSX_BUNDLE)
set(BIN_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin")
if(NOT WIN32)
file( GLOB _icons "${theme_dir}/colored/${APPLICATION_SHORTNAME}-icon-*.png" )
file( GLOB _icons "${theme_dir}/colored/${ICON_APP_NAME}-icon-*.png" )
foreach( _file ${_icons} )
string( REPLACE "${theme_dir}/colored/${APPLICATION_SHORTNAME}-icon-" "" _res ${_file} )
string( REPLACE "${theme_dir}/colored/${ICON_APP_NAME}-icon-" "" _res ${_file} )
string( REPLACE ".png" "" _res ${_res} )
install( FILES ${_file} RENAME ${APPLICATION_SHORTNAME}.png DESTINATION
${CMAKE_INSTALL_DATADIR}/icons/hicolor/${_res}x${_res}/apps )
install( FILES ${_file} RENAME ${ICON_APP_NAME}.png DESTINATION ${DATADIR}/icons/hicolor/${_res}x${_res}/apps )
endforeach( _file )
endif(NOT WIN32)
install(FILES ${mirall_I18N} DESTINATION share/${APPLICATION_SHORTNAME}/i18n)
install(FILES ${mirall_I18N} DESTINATION share/${APPLICATION_EXECUTABLE}/i18n)
# we may not add MACOSX_BUNDLE here, if not building one
+23 -28
Ver Arquivo
@@ -67,11 +67,25 @@ int getauth(const char *prompt,
} // ns
class HttpCredentialsAccessManager : public MirallAccessManager {
public:
HttpCredentialsAccessManager(const HttpCredentials *cred, QObject* parent = 0)
: MirallAccessManager(parent), _cred(cred) {}
protected:
QNetworkReply *createRequest(Operation op, const QNetworkRequest &request, QIODevice *outgoingData) {
QByteArray credHash = QByteArray(_cred->user().toUtf8()+":"+_cred->password().toUtf8()).toBase64();
QNetworkRequest req(request);
req.setRawHeader(QByteArray("Authorization"), QByteArray("Basic ") + credHash);
return MirallAccessManager::createRequest(op, req, outgoingData);\
}
private:
const HttpCredentials *_cred;
};
HttpCredentials::HttpCredentials()
: _user(),
_password(),
_ready(false),
_attempts()
_ready(false)
{}
HttpCredentials::HttpCredentials(const QString& user, const QString& password)
@@ -134,7 +148,7 @@ QString HttpCredentials::password() const
QNetworkAccessManager* HttpCredentials::getQNAM() const
{
MirallAccessManager* qnam = new MirallAccessManager;
MirallAccessManager* qnam = new HttpCredentialsAccessManager(this);
connect( qnam, SIGNAL(authenticationRequired(QNetworkReply*, QAuthenticator*)),
this, SLOT(slotAuthentication(QNetworkReply*,QAuthenticator*)));
@@ -180,30 +194,12 @@ void HttpCredentials::slotCredentialsFetched(bool ok)
void HttpCredentials::slotAuthentication(QNetworkReply* reply, QAuthenticator* authenticator)
{
if( !(authenticator && reply) ) return;
qDebug() << "Authenticating request for " << reply->url();
if (_attempts.contains(reply)) {
++_attempts[reply];
} else {
connect(reply, SIGNAL(finished()),
this, SLOT(slotReplyFinished()));
_attempts[reply] = 1;
}
// TODO: Replace it with something meaningful...
//if( reply->url().toString().startsWith( webdavUrl( _connection ) ) ) {
if (_attempts[reply] > 1) {
qDebug() << "Too many attempts to authenticate. Stop request.";
reply->close();
} else {
authenticator->setUser( _user );
authenticator->setPassword( _password );
}
//} else {
// qDebug() << "WRN: attempt to authenticate to different url - closing.";
// reply->close();
//}
Q_UNUSED(authenticator)
// we cannot use QAuthenticator, because it sends username and passwords with latin1
// instead of utf8 encoding. Instead, we send it manually. Thus, if we reach this signal,
// those credentials were invalid and we terminate.
qDebug() << "Stop request: Authentication failed for " << reply->url().toString();
reply->close();
}
void HttpCredentials::slotReplyFinished()
@@ -212,7 +208,6 @@ void HttpCredentials::slotReplyFinished()
disconnect(reply, SIGNAL(finished()),
this, SLOT(slotReplyFinished()));
_attempts.remove (reply);
}
} // ns Mirall
-1
Ver Arquivo
@@ -56,7 +56,6 @@ private:
QString _user;
QString _password;
bool _ready;
QMap<QNetworkReply*, int> _attempts;
};
} // ns Mirall
+23 -7
Ver Arquivo
@@ -14,8 +14,20 @@
#include "mirall/application.h"
#include "mirall/theme.h"
#include "mirall/utility.h"
#include <QMessageBox>
#include <QTimer>
void warnSystray()
{
QMessageBox::critical(0, qApp->translate("main.cpp", "System Tray not available"),
qApp->translate("main.cpp", "%1 requires on a working system tray. "
"If you are running XFCE, please follow "
"<a href=\"http://docs.xfce.org/xfce/xfce4-panel/systray\">these instructions</a>. "
"Otherwise, please install a system tray application such as 'trayer' and try again.")
.arg(Mirall::Theme::instance()->appNameGUI()));
}
int main(int argc, char **argv)
{
@@ -39,13 +51,17 @@ int main(int argc, char **argv)
}
return 0;
} else {
if (!QSystemTrayIcon::isSystemTrayAvailable()) {
QMessageBox::critical(0, qApp->translate("main.cpp", "System Tray not available"),
qApp->translate("main.cpp", "%1 requires on a working system tray. "
"If you are running XFCE, please follow "
"<a href=\"http://docs.xfce.org/xfce/xfce4-panel/systray\">these instructions</a>. "
"Otherwise, please install a system tray application such as 'trayer' and try again.")
.arg(Mirall::Theme::instance()->appNameGUI()));
int attempts = 0;
forever {
if (!QSystemTrayIcon::isSystemTrayAvailable() && qgetenv("DESKTOP_SESSION") != "ubuntu") {
Mirall::Utility::sleep(1);
attempts++;
if (attempts < 30) continue;
} else {
break;
}
warnSystray();
break;
}
}
return app.exec();
+87 -35
Ver Arquivo
@@ -40,7 +40,7 @@ namespace Mirall {
static const char progressBarStyleC[] =
"QProgressBar {"
"border: 2px solid grey;"
"border: 1px solid grey;"
"border-radius: 5px;"
"text-align: center;"
"}"
@@ -50,8 +50,7 @@ static const char progressBarStyleC[] =
AccountSettings::AccountSettings(QWidget *parent) :
QWidget(parent),
ui(new Ui::AccountSettings),
_item(0)
ui(new Ui::AccountSettings)
{
ui->setupUi(this);
@@ -205,9 +204,9 @@ void AccountSettings::buttonsSetEnabled()
ui->_ButtonInfo->setEnabled(isSelected);
}
void AccountSettings::setListWidgetItem( QListWidgetItem *item )
void AccountSettings::setGeneralErrors( const QStringList& errors )
{
_item = item;
_generalErrors = errors;
}
void AccountSettings::folderToModelItem( QStandardItem *item, Folder *f )
@@ -223,10 +222,6 @@ void AccountSettings::folderToModelItem( QStandardItem *item, Folder *f )
SyncResult::Status status = res.status();
QStringList errorList = res.errorStrings();
QString errors;
if( ! errorList.isEmpty() ) {
errors = res.errorStrings().join(QLatin1String("<br/>"));
}
Theme *theme = Theme::instance();
item->setData( theme->statusHeaderText( status ), Qt::ToolTipRole );
@@ -236,14 +231,17 @@ void AccountSettings::folderToModelItem( QStandardItem *item, Folder *f )
item->setData( theme->folderDisabledIcon( ), FolderStatusDelegate::FolderStatusIconRole ); // size 48 before
}
item->setData( theme->statusHeaderText( status ), FolderStatusDelegate::FolderStatus );
item->setData( errors, FolderStatusDelegate::FolderErrorMsg );
if( errors.isEmpty() && (status == SyncResult::Error ||
status == SyncResult::SetupError ||
status == SyncResult::Unavailable )) {
item->setData( theme->statusHeaderText(status), FolderStatusDelegate::FolderErrorMsg);
if( errorList.isEmpty() ) {
if( (status == SyncResult::Error ||
status == SyncResult::SetupError ||
status == SyncResult::Unavailable )) {
errorList << theme->statusHeaderText(status);
}
}
item->setData( errorList, FolderStatusDelegate::FolderErrorMsg);
bool ongoing = false;
item->setData( QVariant(res.warnCount()), FolderStatusDelegate::WarningCount );
if( status == SyncResult::SyncRunning ) {
@@ -257,6 +255,8 @@ void AccountSettings::slotRemoveCurrentFolder()
{
QModelIndex selected = ui->_folderList->selectionModel()->currentIndex();
if( selected.isValid() ) {
int row = selected.row();
QString alias = _model->data( selected, FolderStatusDelegate::FolderAliasRole ).toString();
qDebug() << "Remove Folder alias " << alias;
if( !alias.isEmpty() ) {
@@ -270,9 +270,22 @@ void AccountSettings::slotRemoveCurrentFolder()
if( ret == QMessageBox::No ) {
return;
}
/* Remove the selected item from the timer hash. */
QStandardItem *item = NULL;
if( selected.isValid() )
item = _model->itemFromIndex(selected);
if( selected.isValid() && item && _hideProgressTimers.contains(item) ) {
QTimer *t = _hideProgressTimers[item];
t->stop();
_hideProgressTimers.remove(item);
delete(t);
}
FolderMan *folderMan = FolderMan::instance();
folderMan->slotRemoveFolder( alias );
setFolderList(folderMan->map());
_model->removeRow(row);
emit folderChanged();
slotCheckConnection();
}
@@ -308,6 +321,22 @@ void AccountSettings::slotDoubleClicked( const QModelIndex& indx )
emit openFolderAlias( alias );
}
void AccountSettings::showConnectionLabel( const QString& message, const QString& tooltip )
{
const QString errStyle = QLatin1String("color:#ffffff; background-color:#bb4d4d;padding:5px;"
"border-width: 1px; border-style: solid; border-color: #aaaaaa;"
"border-radius:5px;");
if( _generalErrors.isEmpty() ) {
ui->connectLabel->setText( message );
ui->connectLabel->setToolTip(tooltip);
} else {
const QString msg = _generalErrors.join(QLatin1String("\n"));
ui->connectLabel->setText( msg );
ui->connectLabel->setToolTip(QString());
ui->connectLabel->setStyleSheet(errStyle);
}
}
void AccountSettings::slotCheckConnection()
{
if( ownCloudInfo::instance()->isConfigured() ) {
@@ -316,12 +345,12 @@ void AccountSettings::slotCheckConnection()
connect(ownCloudInfo::instance(), SIGNAL(noOwncloudFound(QNetworkReply*)),
this, SLOT(slotOCInfoFail(QNetworkReply*)));
ui->connectLabel->setText( tr("Checking %1 connection...").arg(Theme::instance()->appNameGUI()));
showConnectionLabel( tr("Checking %1 connection...").arg(Theme::instance()->appNameGUI()));
qDebug() << "Check status.php from statusdialog.";
ownCloudInfo::instance()->checkInstallation();
} else {
// ownCloud is not yet configured.
ui->connectLabel->setText( tr("No %1 connection configured.").arg(Theme::instance()->appNameGUI()));
showConnectionLabel( tr("No %1 connection configured.").arg(Theme::instance()->appNameGUI()) );
ui->_ButtonAdd->setEnabled( false);
}
}
@@ -329,8 +358,14 @@ void AccountSettings::slotCheckConnection()
void AccountSettings::setFolderList( const Folder::Map &folders )
{
_model->clear();
foreach(QTimer *t, _hideProgressTimers) {
t->stop();
delete t;
}
_hideProgressTimers.clear();
foreach( Folder *f, folders ) {
qDebug() << "Folder: " << f;
slotAddFolder( f );
}
@@ -450,8 +485,8 @@ void AccountSettings::slotOCInfo( const QString& url, const QString& versionStr,
ui->connectLabel->setOpenExternalLinks(true);
QUrl safeUrl(url);
safeUrl.setPassword(QString()); // Remove the password from the URL to avoid showing it in the UI
ui->connectLabel->setText( tr("Connected to <a href=\"%1\">%2</a>.").arg(url, safeUrl.toString()) );
ui->connectLabel->setToolTip( tr("Version: %1 (%2)").arg(versionStr).arg(version));
showConnectionLabel( tr("Connected to <a href=\"%1\">%2</a>.").arg(url, safeUrl.toString()),
tr("Version: %1 (%2)").arg(versionStr).arg(version) );
ui->_ButtonAdd->setEnabled(true);
disconnect(ownCloudInfo::instance(), SIGNAL(ownCloudInfoFound(const QString&, const QString&, const QString&, const QString&)),
@@ -465,7 +500,7 @@ void AccountSettings::slotOCInfoFail( QNetworkReply *reply)
QString errStr = tr("unknown problem.");
if( reply ) errStr = reply->errorString();
ui->connectLabel->setText( tr("<p>Failed to connect to %1: <tt>%2</tt></p>").arg(Theme::instance()->appNameGUI()).arg(errStr) );
showConnectionLabel( tr("<p>Failed to connect to %1: <tt>%2</tt></p>").arg(Theme::instance()->appNameGUI()).arg(errStr) );
ui->_ButtonAdd->setEnabled( false);
disconnect(ownCloudInfo::instance(), SIGNAL(ownCloudInfoFound(const QString&, const QString&, const QString&, const QString&)),
@@ -654,12 +689,21 @@ void AccountSettings::slotHideProgress()
while (i != _hideProgressTimers.constEnd()) {
if( i.value() == send_timer ) {
QStandardItem *item = i.key();
item->setData( QVariant(false), FolderStatusDelegate::AddProgressSpace );
item->setData( QVariant(QString::null), FolderStatusDelegate::SyncProgressOverallString );
item->setData( QVariant(QString::null), FolderStatusDelegate::SyncProgressItemString );
item->setData( 0, FolderStatusDelegate::SyncProgressOverallPercent );
ui->_folderList->repaint();
/* Check if this item is still existing */
bool ok = false;
for( int r = 0; !ok && r < _model->rowCount(); r++) {
if( item == _model->item(r,0) ) {
ok = true;
}
}
if( ok ) {
item->setData( QVariant(false), FolderStatusDelegate::AddProgressSpace );
item->setData( QVariant(QString::null), FolderStatusDelegate::SyncProgressOverallString );
item->setData( QVariant(QString::null), FolderStatusDelegate::SyncProgressItemString );
item->setData( 0, FolderStatusDelegate::SyncProgressOverallPercent );
}
_hideProgressTimers.remove(item);
break;
}
@@ -671,15 +715,23 @@ void AccountSettings::slotHideProgress()
void AccountSettings::slotUpdateQuota(qint64 total, qint64 used)
{
ui->quotaProgressBar->setEnabled(true);
// workaround the label only accepting ints (which may be only 32 bit wide)
ui->quotaProgressBar->setMaximum(100);
int qVal = qRound(used/(double)total * 100);
if( qVal > 100 ) qVal = 100;
ui->quotaProgressBar->setValue(qVal);
QString usedStr = Utility::octetsToString(used);
QString totalStr = Utility::octetsToString(total);
ui->quotaLabel->setText(tr("%1 of %2 in use.").arg(usedStr, totalStr));
if( total > 0 ) {
ui->quotaProgressBar->setVisible(true);
ui->quotaInfoLabel->setVisible(true);
ui->quotaProgressBar->setEnabled(true);
// workaround the label only accepting ints (which may be only 32 bit wide)
ui->quotaProgressBar->setMaximum(100);
int qVal = qRound(used/(double)total * 100);
if( qVal > 100 ) qVal = 100;
ui->quotaProgressBar->setValue(qVal);
QString usedStr = Utility::octetsToString(used);
QString totalStr = Utility::octetsToString(total);
ui->quotaLabel->setText(tr("%1 of %2 in use.").arg(usedStr, totalStr));
} else {
ui->quotaProgressBar->setVisible(false);
ui->quotaInfoLabel->setVisible(false);
ui->quotaLabel->setText(tr("Currently there is no storage usage information available."));
}
}
void AccountSettings::slotIgnoreFilesEditor()
+4 -2
Ver Arquivo
@@ -51,7 +51,6 @@ public:
void setFolderList( const Folder::Map& );
void buttonsSetEnabled();
void setListWidgetItem(QListWidgetItem* item);
signals:
void folderChanged();
@@ -74,6 +73,8 @@ public slots:
void slotUpdateQuota( qint64,qint64 );
void slotIgnoreFilesEditor();
void setGeneralErrors( const QStringList& errors );
protected slots:
void slotAddFolder();
void slotAddFolder( Folder* );
@@ -90,15 +91,16 @@ private:
QString shortenFilename( const QString& folder, const QString& file ) const;
void folderToModelItem( QStandardItem *, Folder * );
QStandardItem* itemForFolder(const QString& );
void showConnectionLabel( const QString& message, const QString& tooltip = QString() );
Ui::AccountSettings *ui;
QPointer<ItemProgressDialog> _fileItemDialog;
QPointer<IgnoreListEditor> _ignoreEditor;
QStandardItemModel *_model;
QListWidgetItem *_item;
QUrl _OCUrl;
QHash<QStandardItem*, QTimer*> _hideProgressTimers;
QString _kindContext;
QStringList _generalErrors;
};
+1 -1
Ver Arquivo
@@ -131,7 +131,7 @@
</widget>
</item>
<item>
<widget class="QLabel" name="label_2">
<widget class="QLabel" name="quotaInfoLabel">
<property name="text">
<string>&lt;b&gt;Note:&lt;/b&gt; Some folders, including network mounted or shared folders, might have different limits.</string>
</property>
+65 -33
Ver Arquivo
@@ -16,12 +16,13 @@
#include <iostream>
#include "config.h"
#include "mirall/application.h"
#include "mirall/systray.h"
#include "mirall/folder.h"
#include "mirall/folderman.h"
#include "mirall/folderwatcher.h"
#include "mirall/folderwizard.h"
#include "mirall/networklocation.h"
#include "mirall/folder.h"
#include "mirall/owncloudsetupwizard.h"
@@ -81,8 +82,7 @@ static const char optionsC[] =
QString applicationTrPath()
{
#ifdef Q_OS_LINUX
// FIXME - proper path!
return QString::fromLatin1("/usr/share/%1/i18n/").arg(Theme::instance()->appName());
return QString::fromLatin1(DATADIR"/"APPLICATION_EXECUTABLE"/i18n/");
#endif
#ifdef Q_OS_MAC
return QApplication::applicationDirPath()+QLatin1String("/../Resources/Translations"); // path defaults to app dir.
@@ -178,13 +178,13 @@ Application::Application(int &argc, char **argv) :
connect( ownCloudInfo::instance(), SIGNAL(quotaUpdated(qint64,qint64)),
SLOT(slotRefreshQuotaDisplay(qint64, qint64)));
connect (this, SIGNAL(aboutToQuit()), SLOT(slotCleanup()));
qDebug() << "Network Location: " << NetworkLocation::currentLocation().encoded();
}
Application::~Application()
{
delete _tray; // needed, see ctor
qDebug() << "* Mirall shutdown";
}
@@ -223,8 +223,24 @@ void Application::slotCredentialsFetched()
runValidator();
}
void Application::slotCleanup()
{
// explicitly close windows. This is somewhat of a hack to ensure
// that saving the geometries happens ASAP during a OS shutdown
// those do delete on close
if (!_settingsDialog.isNull()) _settingsDialog->close();
if (!_progressDialog.isNull()) _progressDialog->close();
// those need an extra invitation
if (!_tray.isNull()) _tray->deleteLater();
if (!_logBrowser.isNull()) _logBrowser->deleteLater();
}
void Application::runValidator()
{
_startupFail.clear();
_conValidator = new ConnectionValidator();
connect( _conValidator, SIGNAL(connectionResult(ConnectionValidator::Status)),
this, SLOT(slotConnectionValidatorResult(ConnectionValidator::Status)) );
@@ -243,20 +259,21 @@ void Application::slotConnectionValidatorResult(ConnectionValidator::Status stat
_tray->show();
int cnt = folderMan->map().size();
slotShowTrayMessage(tr("%1 Sync Started").arg(_theme->appNameGUI()),
slotShowOptionalTrayMessage(tr("%1 Sync Started").arg(_theme->appNameGUI()),
tr("Sync started for %n configured sync folder(s).","", cnt));
// queue up the sync for all folders.
folderMan->slotScheduleAllFolders();
computeOverallSyncStatus();
setupContextMenu();
} else if( status == ConnectionValidator::NotConfigured ) {
// this can not happen, it should be caught in first step of startup.
} else {
// What else?
// if we have problems here, it's unlikely that syncing will work.
FolderMan::instance()->setSyncEnabled(false);
_startupFail = _conValidator->errors();
}
computeOverallSyncStatus();
setupContextMenu();
_conValidator->deleteLater();
}
@@ -341,7 +358,7 @@ void Application::setupSystemTray()
_tray = new Systray();
_tray->setIcon( _theme->syncStateIcon( SyncResult::NotYetStarted, true ) );
connect(_tray,SIGNAL(activated(QSystemTrayIcon::ActivationReason)),
connect(_tray.data(), SIGNAL(activated(QSystemTrayIcon::ActivationReason)),
SLOT(slotTrayClicked(QSystemTrayIcon::ActivationReason)));
setupContextMenu();
@@ -408,7 +425,9 @@ void Application::setupContextMenu()
_contextMenu->addMenu(_recentActionsMenu);
_contextMenu->addSeparator();
_contextMenu->addAction(_actionSettings);
_contextMenu->addAction(_actionHelp);
if (!_theme->helpUrl().isEmpty()) {
_contextMenu->addAction(_actionHelp);
}
_contextMenu->addSeparator();
_contextMenu->addAction(_actionQuit);
@@ -417,7 +436,7 @@ void Application::setupContextMenu()
void Application::setupLogBrowser()
{
// might be called from second instance
if (!_logBrowser) {
if (_logBrowser.isNull()) {
// init the log browser.
qInstallMsgHandler( mirallLogCatcher );
_logBrowser = new LogBrowser;
@@ -511,6 +530,9 @@ void Application::slotSetupProxy()
default:
break;
}
FolderMan::instance()->setDirtyProxy(true);
FolderMan::instance()->slotScheduleAllFolders();
}
void Application::slotRefreshQuotaDisplay( qint64 total, qint64 used )
@@ -651,7 +673,7 @@ bool Application::checkConfigExists(bool openSettings)
// if no config file is there, start the configuration wizard.
MirallConfigFile cfgFile;
if( cfgFile.exists() ) {
if( cfgFile.exists() && !cfgFile.ownCloudUrl().isEmpty() ) {
if( openSettings ) {
slotSettings();
}
@@ -683,7 +705,9 @@ void Application::slotSettings()
_settingsDialog->setAttribute( Qt::WA_DeleteOnClose, true );
_settingsDialog->show();
}
Utility::raiseDialog(_settingsDialog);
_settingsDialog->setGeneralErrors( _startupFail );
Utility::raiseDialog(_settingsDialog.data());
}
void Application::slotItemProgressDialog()
@@ -694,7 +718,7 @@ void Application::slotItemProgressDialog()
_progressDialog->setupList();
_progressDialog->show();
}
Utility::raiseDialog(_progressDialog);
Utility::raiseDialog(_progressDialog.data());
}
void Application::slotParseOptions(const QString &opts)
@@ -805,23 +829,31 @@ void Application::computeOverallSyncStatus()
Folder::Map map = folderMan->map();
SyncResult overallResult = FolderMan::accountStatus(map.values());
// create the tray blob message, check if we have an defined state
if( overallResult.status() != SyncResult::Undefined ) {
QStringList allStatusStrings;
foreach(Folder* folder, map.values()) {
qDebug() << "Folder in overallStatus Message: " << folder << " with name " << folder->alias();
QString folderMessage = folderMan->statusToString(folder->syncResult().status(), folder->syncEnabled());
allStatusStrings += tr("Folder %1: %2").arg(folder->alias(), folderMessage);
}
if( ! allStatusStrings.isEmpty() )
trayMessage = allStatusStrings.join(QLatin1String("\n"));
else
trayMessage = tr("No sync folders configured.");
QIcon statusIcon = _theme->syncStateIcon( overallResult.status(), true);
// if there have been startup problems, show an error message.
if( !_startupFail.isEmpty() ) {
trayMessage = _startupFail.join(QLatin1String("\n"));
QIcon statusIcon = _theme->syncStateIcon( SyncResult::Error, true );
_tray->setIcon( statusIcon );
_tray->setToolTip(trayMessage);
} else {
// create the tray blob message, check if we have an defined state
if( overallResult.status() != SyncResult::Undefined ) {
QStringList allStatusStrings;
foreach(Folder* folder, map.values()) {
qDebug() << "Folder in overallStatus Message: " << folder << " with name " << folder->alias();
QString folderMessage = folderMan->statusToString(folder->syncResult().status(), folder->syncEnabled());
allStatusStrings += tr("Folder %1: %2").arg(folder->alias(), folderMessage);
}
if( ! allStatusStrings.isEmpty() )
trayMessage = allStatusStrings.join(QLatin1String("\n"));
else
trayMessage = tr("No sync folders configured.");
QIcon statusIcon = _theme->syncStateIcon( overallResult.status(), true);
_tray->setIcon( statusIcon );
_tray->setToolTip(trayMessage);
}
}
}
+4 -4
Ver Arquivo
@@ -40,7 +40,6 @@ namespace Mirall {
class Theme;
class Folder;
class FolderWatcher;
class FolderWizard;
class ownCloudInfo;
class SslErrorDialog;
class SettingsDialog;
@@ -107,13 +106,14 @@ protected slots:
void slotDisplayIdle();
void slotHelp();
void slotCredentialsFetched();
void slotCleanup();
private:
void setHelp();
void raiseDialog( QWidget* );
void rebuildRecentMenus();
void runValidator();
Systray *_tray;
QPointer<Systray> _tray;
QAction *_actionOpenoC;
QAction *_actionSettings;
QAction *_actionQuota;
@@ -124,7 +124,6 @@ private:
QNetworkConfigurationManager *_networkMgr;
QPointer<FolderWizard> _folderWizard;
SslErrorDialog *_sslErrorDialog;
ConnectionValidator *_conValidator;
@@ -134,12 +133,13 @@ private:
Theme *_theme;
QSignalMapper *_folderOpenActionMapper;
LogBrowser *_logBrowser;
QPointer<LogBrowser>_logBrowser;
QPointer<SettingsDialog> _settingsDialog;
QPointer<ItemProgressDialog> _progressDialog;
QString _logFile;
QString _logDirectory;
QStringList _startupFail;
int _logExpire;
bool _showLogWindow;
+7 -4
Ver Arquivo
@@ -89,6 +89,7 @@ void ConnectionValidator::checkConnection()
// checks for status.php
ownCloudInfo::instance()->checkInstallation();
} else {
_errors << tr("No ownCloud connection configured");
emit connectionResult( NotConfigured );
}
}
@@ -109,8 +110,8 @@ void ConnectionValidator::slotStatusFound( const QString& url, const QString& ve
this, SLOT(slotNoStatusFound(QNetworkReply*)));
if( version.startsWith("4.0") ) {
_errors.append( tr("<p>The configured server for this client is too old.</p>"
"<p>Please update to the latest server and restart the client.</p>"));
_errors.append( tr("The configured server for this client is too old") );
_errors.append( tr("Please update to the latest server and restart the client.") );
emit connectionResult( ServerVersionMismatch );
return;
}
@@ -144,15 +145,17 @@ void ConnectionValidator::slotCheckAuthentication()
// continue in slotAuthCheck here :-)
}
void ConnectionValidator::slotAuthCheck( const QString& ,QNetworkReply *reply )
void ConnectionValidator::slotAuthCheck( const QString&, QNetworkReply *reply )
{
Status stat = Connected;
if( reply->error() == QNetworkReply::AuthenticationRequiredError ||
reply->error() == QNetworkReply::OperationCanceledError ) { // returned if the user is wrong.
qDebug() << "******** Password is wrong!";
_errors << "The provided credentials are wrong.";
_errors << tr("The provided credentials are not correct");
stat = CredentialsWrong;
} else if( reply->error() != QNetworkReply::NoError ) {
_errors << reply->errorString();
}
// disconnect from ownCloud Info signals
+8 -6
Ver Arquivo
@@ -140,19 +140,19 @@ QString CSyncThread::csyncErrorToString( CSYNC_ERROR_CODE err, const char *errSt
errStr = tr("A HTTP transmission error happened.");
break;
case CSYNC_ERR_PERM:
errStr = tr("CSync failed due to not handled permission deniend.");
errStr = tr("CSync: Permission deniend.");
break;
case CSYNC_ERR_NOT_FOUND:
errStr = tr("CSync failed to find a specific file.");
errStr = tr("CSync: File not found.");
break;
case CSYNC_ERR_EXISTS:
errStr = tr("CSync tried to create a directory that already exists.");
errStr = tr("CSync: Directory already exists.");
break;
case CSYNC_ERR_NOSPC:
errStr = tr("CSync: No space on %1 server available.").arg(Theme::instance()->appNameGUI());
errStr = tr("CSync: No space left on %1 server.").arg(Theme::instance()->appNameGUI());
break;
case CSYNC_ERR_UNSPEC:
errStr = tr("CSync unspecified error.");
errStr = tr("CSync: unspecified error.");
default:
errStr = tr("An internal error number %1 happend.").arg( (int) err );
@@ -187,7 +187,9 @@ int CSyncThread::treewalkFile( TREE_WALK_FILE *file, bool remote )
item._file = QString::fromUtf8( file->path );
item._instruction = file->instruction;
item._dir = SyncFileItem::None;
if(file->error_string) {
item._errorString = QString::fromUtf8(file->error_string);
}
SyncFileItem::Direction dir;
int re = 0;
+25 -10
Ver Arquivo
@@ -111,6 +111,7 @@ bool Folder::init()
}
return _csync_ctx;
}
Folder::~Folder()
{
if( _thread ) {
@@ -196,16 +197,14 @@ bool Folder::syncEnabled() const
void Folder::setSyncEnabled( bool doit )
{
_enabled = doit;
_watcher->setEventsEnabled( doit );
qDebug() << "setSyncEnabled - ############################ " << doit;
if( doit ) {
// undefined until next sync
_syncResult.setStatus( SyncResult::NotYetStarted);
_syncResult.clearErrors();
evaluateSync( QStringList() );
// qDebug() << "Syncing enabled on folder " << name();
} else {
// disable folder. Done through the _enabled-flag set above
// do not stop or start the watcher here, that is done internally by
// folder class. Even if the watcher fires, the folder does not
// schedule itself because it checks the var. _enabled before.
_pollTimer.stop();
}
}
@@ -227,6 +226,7 @@ void Folder::evaluateSync(const QStringList &/*pathList*/)
}
_syncResult.setStatus( SyncResult::NotYetStarted );
_syncResult.clearErrors();
emit scheduleToSync( alias() );
}
@@ -235,8 +235,9 @@ void Folder::slotPollTimerTimeout()
{
qDebug() << "* Polling" << alias() << "for changes. (time since next sync:" << (_timeSinceLastSync.elapsed() / 1000) << "s)";
if (quint64(_timeSinceLastSync.elapsed()) > MirallConfigFile().forceSyncInterval()) {
qDebug() << "* Force Sync now";
if (quint64(_timeSinceLastSync.elapsed()) > MirallConfigFile().forceSyncInterval() ||
_syncResult.status() != SyncResult::Success ) {
qDebug() << "** Force Sync now";
evaluateSync(QStringList());
} else {
RequestEtagJob* job = new RequestEtagJob(secondPath(), this);
@@ -297,11 +298,21 @@ void Folder::bubbleUpSyncResult()
newItems++;
if (firstItemNew.isEmpty())
firstItemNew = item;
if (item._type == SyncFileItem::Directory) {
_watcher->addPath(path() + item._file);
}
break;
case CSYNC_INSTRUCTION_REMOVE:
removedItems++;
if (firstItemDeleted.isEmpty())
firstItemDeleted = item;
if (item._type == SyncFileItem::Directory) {
_watcher->removePath(path() + item._file);
}
break;
case CSYNC_INSTRUCTION_UPDATED:
updatedItems++;
@@ -488,6 +499,8 @@ void Folder::setProxy()
csync_set_module_property(_csync_ctx, "proxy_port", &proxyPort );
csync_set_module_property(_csync_ctx, "proxy_user", proxy.user().toUtf8().data() );
csync_set_module_property(_csync_ctx, "proxy_pwd" , proxy.password().toUtf8().data() );
FolderMan::instance()->setDirtyProxy(false);
}
}
@@ -526,6 +539,8 @@ void Folder::startSync(const QStringList &pathList)
QMetaObject::invokeMethod(this, "slotCSyncFinished", Qt::QueuedConnection);
return;
}
} else if (FolderMan::instance()->isDirtyProxy()) {
setProxy();
}
if (_thread && _thread->isRunning()) {
@@ -547,7 +562,6 @@ void Folder::startSync(const QStringList &pathList)
qDebug() << "*** Start syncing";
_thread = new QThread(this);
_thread->setPriority(QThread::LowPriority);
setIgnoredFiles();
_csync = new CSyncThread( _csync_ctx );
_csync->moveToThread(_thread);
@@ -570,6 +584,7 @@ void Folder::startSync(const QStringList &pathList)
connect(_csync, SIGNAL(transmissionProgress(Progress::Info)), this, SLOT(slotTransmissionProgress(Progress::Info)));
_thread->start();
_thread->setPriority(QThread::LowPriority);
QMetaObject::invokeMethod(_csync, "startSync", Qt::QueuedConnection);
// disable events until syncing is done
+11 -2
Ver Arquivo
@@ -37,7 +37,8 @@ FolderMan* FolderMan::_instance = 0;
FolderMan::FolderMan(QObject *parent) :
QObject(parent),
_syncEnabled( true )
_syncEnabled( true ),
_dirtyProxy( true )
{
// if QDir::mkpath would not be so stupid, I would not need to have this
// duplication of folderConfigPath() here
@@ -279,6 +280,7 @@ void FolderMan::slotEnableFolder( const QString& alias, bool enable )
Folder *f = _folderMap[alias];
if( f ) {
f->setSyncEnabled(enable);
f->evaluateSync(QStringList());
}
}
@@ -360,6 +362,10 @@ void FolderMan::setSyncEnabled( bool enabled )
QTimer::singleShot(200, this, SLOT(slotScheduleFolderSync()));
}
_syncEnabled = enabled;
foreach( Folder *f, _folderMap.values() ) {
f->setSyncEnabled(enabled);
}
}
/*
@@ -466,7 +472,10 @@ void FolderMan::removeFolder( const QString& alias )
qDebug() << "Remove folder config file " << file.fileName();
file.remove();
}
f->deleteLater();
// FIXME: this is a temporar dirty fix against a crash happening because
// the csync owncloud module still has static components. Activate the
// delete once the module is fixed.
// f->deleteLater();
}
}
+4
Ver Arquivo
@@ -109,6 +109,9 @@ public slots:
void slotScheduleAllFolders();
bool isDirtyProxy() { return _dirtyProxy; }
void setDirtyProxy(bool value = true) { _dirtyProxy = value; }
private slots:
// slot to add a folder to the syncing queue
void slotScheduleSync( const QString & );
@@ -136,6 +139,7 @@ private:
QString _currentSyncFolder;
bool _syncEnabled;
QQueue<QString> _scheduleQueue;
bool _dirtyProxy; // If the proxy need to be re-configured
explicit FolderMan(QObject *parent = 0);
static FolderMan *_instance;
+13 -11
Ver Arquivo
@@ -81,8 +81,9 @@ QSize FolderStatusDelegate::sizeHint(const QStyleOptionViewItem & option ,
h += aliasMargin; // bottom margin
// add some space to show an error condition.
if( ! qvariant_cast<QString>(index.data(FolderErrorMsg)).isEmpty() ) {
h += aliasMargin*2+fm.height();
if( ! qvariant_cast<QStringList>(index.data(FolderErrorMsg)).isEmpty() ) {
QStringList errMsgs = qvariant_cast<QStringList>(index.data(FolderErrorMsg));
h += aliasMargin*2 + errMsgs.count()*fm.height();
}
if( qvariant_cast<bool>(index.data(AddProgressSpace)) ) {
@@ -122,7 +123,7 @@ void FolderStatusDelegate::paint(QPainter *painter, const QStyleOptionViewItem &
QString aliasText = qvariant_cast<QString>(index.data(FolderAliasRole));
QString pathText = qvariant_cast<QString>(index.data(FolderPathRole));
QString remotePath = qvariant_cast<QString>(index.data(FolderSecondPathRole));
QString errorText = qvariant_cast<QString>(index.data(FolderErrorMsg));
QStringList errorTexts= qvariant_cast<QStringList>(index.data(FolderErrorMsg));
int overallPercent = qvariant_cast<int>(index.data(SyncProgressOverallPercent));
QString overallString = qvariant_cast<QString>(index.data(SyncProgressOverallString));
@@ -211,12 +212,12 @@ void FolderStatusDelegate::paint(QPainter *painter, const QStyleOptionViewItem &
// paint an error overlay if there is an error string
int h = iconRect.bottom();
if( !errorText.isEmpty() ) {
if( !errorTexts.isEmpty() ) {
h += aliasMargin;
QRect errorRect = localPathRect;
errorRect.setLeft( iconRect.left());
errorRect.setTop( h );
errorRect.setHeight(subFm.height()+aliasMargin);
errorRect.setHeight(errorTexts.count() * subFm.height()+aliasMargin);
errorRect.setRight( option.rect.right()-aliasMargin );
painter->setBrush( QColor(0xbb, 0x4d, 0x4d) );
@@ -226,15 +227,16 @@ void FolderStatusDelegate::paint(QPainter *painter, const QStyleOptionViewItem &
painter->setPen( Qt::white );
painter->setFont(errorFont);
QRect errorTextRect = errorRect;
errorTextRect.setLeft( errorTextRect.left()+aliasMargin +16);
errorTextRect.setLeft( errorTextRect.left()+aliasMargin );
errorTextRect.setTop( errorTextRect.top()+aliasMargin/2 );
int linebreak = errorText.indexOf(QLatin1String("<br"));
QString eText = errorText;
if(linebreak) {
eText = errorText.left(linebreak);
int x = errorTextRect.left();
int y = errorTextRect.top()+aliasMargin/2 + subFm.height()/2;
foreach( QString eText, errorTexts ) {
painter->drawText(x, y, subFm.elidedText( eText, Qt::ElideLeft, errorTextRect.width()-2*aliasMargin));
y += subFm.height();
}
painter->drawText(errorTextRect, eText);
h = errorRect.bottom();
}
+11
Ver Arquivo
@@ -172,5 +172,16 @@ void FolderWatcher::changeDetected(const QString& f)
setProcessTimer();
}
void FolderWatcher::addPath(const QString &path )
{
_d->addPath(path);
}
void FolderWatcher::removePath(const QString &path )
{
_d->removePath(path);
}
} // namespace Mirall
+9
Ver Arquivo
@@ -88,6 +88,15 @@ public:
void setEventInterval(int seconds);
QStringList ignores() const;
/**
* Not all backends are recursive by default.
* Those need to be notified when a directory is added or removed while the watcher is disabled.
* This is a no-op for backend that are recursive
*/
void addPath(const QString&);
void removePath(const QString&);
public slots:
/**
* Enabled or disables folderChanged() events.
+12 -5
Ver Arquivo
@@ -50,8 +50,7 @@ void FolderWatcherPrivate::slotAddFolderRecursive(const QString &path)
qDebug() << "(+) Watcher:" << path;
if (!_inotify->addPath(path)) {
FolderWatcher *fw = qobject_cast<FolderWatcher*>(parent());
emit fw->error(tr("Could not monitor directories due to system limitations.\n"
emit _parent->error(tr("Could not monitor directories due to system limitations.\n"
"The application will not work reliably. Please check the\n"
"documentation for possible fixes."));
}
@@ -119,9 +118,8 @@ void FolderWatcherPrivate::slotINotifyEvent(int mask, int /*cookie*/, const QStr
}
else if (mask & IN_DELETE) {
//qDebug() << cookie << " DELETE: " << path;
if ( QFileInfo(path).isDir() && _inotify->directories().contains(path) ) {
qDebug() << "(-) Watcher:" << path;
_inotify->removePath(path);
if ( QFileInfo(path).isDir() ) {
removePath(path);
}
}
else if (mask & IN_CLOSE_WRITE) {
@@ -160,4 +158,13 @@ void FolderWatcherPrivate::slotINotifyEvent(int mask, int /*cookie*/, const QStr
_parent->setProcessTimer();
}
void FolderWatcherPrivate::removePath(const QString &path )
{
if (_inotify->directories().contains(path) ) {
qDebug() << "(-) Watcher:" << path;
_inotify->removePath(path);
}
}
} // namespace Mirall
+2
Ver Arquivo
@@ -26,6 +26,8 @@ class FolderWatcherPrivate : public QObject {
Q_OBJECT
public:
FolderWatcherPrivate(FolderWatcher *p);
void addPath(const QString &path) { slotAddFolderRecursive(path); }
void removePath(const QString &);
signals:
void error(const QString& error);
private slots:
+3
Ver Arquivo
@@ -31,6 +31,9 @@ public:
FolderWatcherPrivate(FolderWatcher *p);
~FolderWatcherPrivate();
void addPath(const QString &) {}
void removePath(const QString &) {}
void startWatching();
void doNotifyParent();
+4
Ver Arquivo
@@ -48,6 +48,10 @@ class FolderWatcherPrivate : public QObject {
public:
FolderWatcherPrivate(FolderWatcher *p);
~FolderWatcherPrivate();
void addPath(const QString &) {}
void removePath(const QString &) {}
private:
FolderWatcher *_parent;
WatcherThread *_thread;
+24 -7
Ver Arquivo
@@ -13,6 +13,7 @@
*/
#include "mirall/folderwizard.h"
#include "mirall/folderman.h"
#include "mirall/owncloudinfo.h"
#include "mirall/mirallconfigfile.h"
#include "mirall/theme.h"
@@ -242,6 +243,7 @@ static void recursiveInsert(QTreeWidgetItem *parent, QStringList pathTrail, QStr
item = new QTreeWidgetItem(parent);
item->setIcon(0, folderIcon);
item->setText(0, pathTrail.first());
item->setData(0, Qt::UserRole, pathTrail.first());
item->setChildIndicatorPolicy(QTreeWidgetItem::ShowIndicator);
}
@@ -252,17 +254,13 @@ static void recursiveInsert(QTreeWidgetItem *parent, QStringList pathTrail, QStr
void FolderWizardTargetPage::slotUpdateDirectories(QStringList list)
{
QFileIconProvider prov;
QIcon folderIcon = prov.icon(QFileIconProvider::Folder);
QString webdavFolder = QUrl(ownCloudInfo::instance()->webdavUrl()).path();
connect(_ui.folderTreeWidget, SIGNAL(itemExpanded(QTreeWidgetItem*)), SLOT(slotItemExpanded(QTreeWidgetItem*)));
QTreeWidgetItem *root = _ui.folderTreeWidget->topLevelItem(0);
if (!root) {
root = new QTreeWidgetItem(_ui.folderTreeWidget);
root->setText(0, tr("Root (\"/\")", "root folder"));
root->setIcon(0, folderIcon);
root->setText(0, Theme::instance()->appNameGUI());
root->setIcon(0, Theme::instance()->applicationIcon());
root->setToolTip(0, tr("Choose this to sync the entire account"));
root->setData(0, Qt::UserRole, "/");
}
@@ -283,7 +281,7 @@ void FolderWizardTargetPage::slotRefreshFolders()
void FolderWizardTargetPage::slotItemExpanded(QTreeWidgetItem *item)
{
ownCloudInfo::instance()->getDirectoryListing(item->text(0));
ownCloudInfo::instance()->getDirectoryListing(item->data(0, Qt::UserRole).toString());
}
FolderWizardTargetPage::~FolderWizardTargetPage()
@@ -298,6 +296,22 @@ bool FolderWizardTargetPage::isComplete() const
QString dir = _ui.folderTreeWidget->currentItem()->data(0, Qt::UserRole).toString();
wizard()->setProperty("targetPath", dir);
Folder::Map map = _folderMap;
Folder::Map::const_iterator i = map.constBegin();
for(i = map.constBegin();i != map.constEnd(); i++ ) {
Folder *f = static_cast<Folder*>(i.value());
QString curDir = f->secondPath();
if (dir == curDir) {
showWarn( tr("This directory is already being synced.") );
return false;
} else if (dir.startsWith(curDir)) {
if (dir.isEmpty()) dir = QLatin1Char('/');
if (curDir.isEmpty()) curDir = QLatin1Char('/');
showWarn( tr("You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>.").arg(curDir).arg(dir) );
return false;
}
}
if( dir == QLatin1String("/") ) {
showWarn( tr("If you sync the root folder, you can <b>not</b> configure another sync directory."));
return true;
@@ -325,6 +339,8 @@ void FolderWizardTargetPage::initializePage()
SLOT(slotCreateRemoteFolderFinished( QNetworkReply::NetworkError )));
connect( ocInfo, SIGNAL(directoryListingUpdated(QStringList)),
SLOT(slotUpdateDirectories(QStringList)));
connect(_ui.folderTreeWidget, SIGNAL(itemExpanded(QTreeWidgetItem*)),
SLOT(slotItemExpanded(QTreeWidgetItem*)));
slotRefreshFolders();
}
@@ -370,6 +386,7 @@ FolderWizard::~FolderWizard()
void FolderWizard::setFolderMap( const Folder::Map& fm)
{
_folderWizardSourcePage->setFolderMap( fm );
_folderWizardTargetPage->setFolderMap( fm );
}
} // end namespace
+3
Ver Arquivo
@@ -69,6 +69,8 @@ public:
virtual void initializePage();
virtual void cleanupPage();
void setFolderMap( const Folder::Map &fm ) { _folderMap = fm; }
protected slots:
void showWarn( const QString& = QString() ) const;
@@ -83,6 +85,7 @@ private:
ownCloudInfo *_ownCloudDirCheck;
bool _dirChecked;
bool _warnWasVisible;
Folder::Map _folderMap;
};
/**
+2 -5
Ver Arquivo
@@ -53,12 +53,9 @@ GeneralSettings::GeneralSettings(QWidget *parent) :
// OEM themes are not obliged to ship mono icons, so there
// is no point in offering an option
QString themeDir = QString::fromLatin1(":/mirall/theme/1%1/")
QString themeDir = QString::fromLatin1(":/mirall/theme/%1/")
.arg(Theme::instance()->systrayIconFlavor(true));
if (QDir(themeDir).exists())
{
_ui->monoIconsCheckBox->setVisible(false);
}
_ui->monoIconsCheckBox->setVisible(QDir(themeDir).exists());
}
+39 -39
Ver Arquivo
@@ -116,22 +116,28 @@ void ItemProgressDialog::setSyncResult( const SyncResult& result )
columns << item._file;
columns << folder;
if( item._instruction == CSYNC_INSTRUCTION_IGNORE) {
if( item._type == SyncFileItem::File ) {
errMsg = tr("File ignored.");
tooltip = tr("The file was ignored because it is listed in the clients ignore list\n"
"or the filename contains characters that are not syncable\nin a cross platform "
"environment.");
} else if( item._type == SyncFileItem::Directory ){
errMsg = tr("Directory ignored.");
tooltip = tr("The directory was ignored because it is listed in the clients\nignore list "
"or the directory name contains\ncharacters that are not syncable in a cross "
"platform environment.");
} else if( item._type == SyncFileItem::SoftLink ) {
errMsg = tr("Soft Link ignored.");
if( item._type == SyncFileItem::SoftLink ) {
errMsg = tr("Soft Link ignored");
tooltip = tr("Softlinks break the semantics of synchronization.\nPlease do not "
"use them in synced directories.");
"use them in synced directories");
} else {
errMsg = tr("Ignored.");
QString obj = tr("file");
if( item._type == SyncFileItem::Directory ) {
obj = tr("directory");
}
tooltip = tr("The %1 was ignored because it is listed in the clients ignore list\n"
"or the %1 name contains characters that are not syncable\nin a cross platform "
"environment").arg(obj);
errMsg = tr("Item ignored");
if( item._errorString == QLatin1String("File listed on ignore list.") ) {
errMsg = tr("%1 on ignore list").arg(obj);
tooltip = tr("The %1 was skipped because it is listed on the clients\n"
"list of names to ignore").arg(obj);
} else if( item._errorString == QLatin1String("File contains invalid characters.") ) {
errMsg = tr("Invalid characters");
tooltip = tr("The %1 name contains one or more invalid characters which break\n"
"syncing in a cross platform environment").arg(obj);
}
}
} else if( item._instruction == CSYNC_INSTRUCTION_CONFLICT ) {
errMsg = tr("Conflict file.");
@@ -149,7 +155,7 @@ void ItemProgressDialog::setSyncResult( const SyncResult& result )
twitem->setToolTip(0, longTimeStr);
twitem->setToolTip(3, tooltip);
twitem->setIcon(0, Theme::instance()->syncStateIcon(SyncResult::Problem, true));
_ui->_treeWidget->addTopLevelItem(twitem);
_ui->_treeWidget->insertTopLevelItem(0, twitem);
}
}
@@ -203,28 +209,22 @@ void ItemProgressDialog::copyToClipboard()
int topLevelItems = _ui->_treeWidget->topLevelItemCount();
for (int i = 0; i < topLevelItems; i++) {
QTreeWidgetItem *item = _ui->_treeWidget->topLevelItem(i);
ts << left << qSetFieldWidth(0)
<< item->data(0, Qt::DisplayRole).toString()
<< endl;
int childItems = item->childCount();
for (int j = 0; j < childItems; j++) {
QTreeWidgetItem *child =item->child(j);
// time stamp
ts << left << qSetFieldWidth(10)
<< child->data(0,Qt::DisplayRole).toString()
// file name
<< qSetFieldWidth(50)
<< child->data(1,Qt::DisplayRole).toString()
// action
<< qSetFieldWidth(15)
<< child->data(2, Qt::DisplayRole).toString()
// size
<< qSetFieldWidth(10)
<< child->data(3, Qt::DisplayRole).toString()
<< qSetFieldWidth(0)
<< endl;
}
QTreeWidgetItem *child = _ui->_treeWidget->topLevelItem(i);
// time stamp
ts << left << qSetFieldWidth(10)
<< child->data(0,Qt::DisplayRole).toString()
// file name
<< qSetFieldWidth(64)
<< child->data(1,Qt::DisplayRole).toString()
<< qSetFieldWidth(0) << ' '
// action
<< qSetFieldWidth(15)
<< child->data(3, Qt::DisplayRole).toString()
// size
<< qSetFieldWidth(10)
<< child->data(4, Qt::DisplayRole).toString()
<< qSetFieldWidth(0)
<< endl;
}
QApplication::clipboard()->setText(text);
@@ -294,7 +294,7 @@ void ItemProgressDialog::slotProgressErrors( const QString& folder, const Progre
// by error_code. A quota problem is considered an error, others might not??
item->setIcon(0, Theme::instance()->syncStateIcon(SyncResult::Error, true));
item->setToolTip(0, longTimeStr);
_ui->_treeWidget->addTopLevelItem(item);
_ui->_treeWidget->insertTopLevelItem(0, item);
Q_UNUSED(item);
}
@@ -325,7 +325,7 @@ void ItemProgressDialog::slotProgressInfo( const QString& folder, const Progress
QTreeWidgetItem *item = new QTreeWidgetItem(columns);
item->setToolTip(0, longTimeStr);
_ui->_treeWidget->addTopLevelItem(item);
_ui->_treeWidget->insertTopLevelItem(0, item);
Q_UNUSED(item);
}
-3
Ver Arquivo
@@ -39,9 +39,6 @@
<property name="uniformRowHeights">
<bool>true</bool>
</property>
<property name="sortingEnabled">
<bool>true</bool>
</property>
<property name="columnCount">
<number>4</number>
</property>
+7 -7
Ver Arquivo
@@ -130,6 +130,13 @@ LogBrowser::~LogBrowser()
{
}
void LogBrowser::closeEvent(QCloseEvent *)
{
MirallConfigFile cfg;
cfg.saveGeometry(this);
}
void LogBrowser::slotNewLog( const QString& msg )
{
if( _logWidget->isVisible() ) {
@@ -227,11 +234,4 @@ void LogBrowser::slotClearLog()
_logWidget->clear();
}
void LogBrowser::closeEvent(QCloseEvent *event)
{
MirallConfigFile cfg;
cfg.saveGeometry(this);
QWidget::closeEvent(event);
}
} // namespace
+1 -1
Ver Arquivo
@@ -48,7 +48,7 @@ public:
void setLogFile(const QString& , bool );
protected:
void closeEvent(QCloseEvent *event);
void closeEvent(QCloseEvent *);
protected slots:
void slotNewLog( const QString &msg );
+2 -2
Ver Arquivo
@@ -193,7 +193,7 @@ QString MirallConfigFile::excludeFile(Scope scope) const
fi.setFile( QApplication::applicationDirPath(), exclFile );
#endif
#ifdef Q_OS_UNIX
fi.setFile( QString("/etc/%1").arg(Theme::instance()->appName()), exclFile );
fi.setFile( QString( SYSCONFDIR "/%1").arg(Theme::instance()->appName()), exclFile );
#endif
#ifdef Q_OS_MAC
// exec path is inside the bundle
@@ -595,7 +595,7 @@ QString MirallConfigFile::proxyPassword() const
int MirallConfigFile::useUploadLimit() const
{
return getValue(useUploadLimitC, QString::null, -1).toInt();
return getValue(useUploadLimitC, QString::null, 0).toInt();
}
bool MirallConfigFile::useDownloadLimit() const
+8 -2
Ver Arquivo
@@ -229,7 +229,7 @@
<item row="0" column="0" colspan="2">
<widget class="QRadioButton" name="noDownloadLimitRadioButton">
<property name="text">
<string>No Limit</string>
<string>No limit</string>
</property>
<property name="checked">
<bool>true</bool>
@@ -254,6 +254,12 @@
</item>
<item row="1" column="1">
<widget class="QGroupBox" name="groupBox_2">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="title">
<string>Upload Bandwidth</string>
</property>
@@ -261,7 +267,7 @@
<item row="0" column="0" colspan="2">
<widget class="QRadioButton" name="noUploadLimitRadioButton">
<property name="text">
<string>No Limit</string>
<string>No limit</string>
</property>
</widget>
</item>
+10 -4
Ver Arquivo
@@ -138,7 +138,8 @@ QNetworkReply* ownCloudInfo::mkdirRequest( const QString& dir )
qDebug() << "OCInfo Making dir " << dir;
_authAttempts = 0;
QNetworkRequest req;
QUrl url = QUrl(webdavUrl(_connection));
QUrl url( webdavUrl(_connection) );
// ensure #, ? and co are interpreted as part of the path and nothing else
url.setEncodedPath(url.encodedPath()+QUrl::toPercentEncoding(dir, "/"));
req.setUrl( url );
@@ -162,7 +163,7 @@ QNetworkReply* ownCloudInfo::mkdirRequest( const QString& dir )
QNetworkReply* ownCloudInfo::getQuotaRequest( const QString& dir )
{
QNetworkRequest req;
req.setUrl( QUrl( webdavUrl(_connection) + dir ) );
req.setUrl( QUrl( webdavUrl(_connection) + QUrl::toPercentEncoding(dir, "/") ) );
req.setRawHeader("Depth", "0");
QByteArray xml("<?xml version=\"1.0\" ?>\n"
"<d:propfind xmlns:d=\"DAV:\">\n"
@@ -190,7 +191,10 @@ QNetworkReply* ownCloudInfo::getQuotaRequest( const QString& dir )
QNetworkReply* ownCloudInfo::getDirectoryListing( const QString& dir )
{
QNetworkRequest req;
req.setUrl( QUrl( webdavUrl(_connection) + dir ) );
QUrl url( webdavUrl(_connection) );
// ensure #, ? and co are interpreted as part of the path and nothing else
url.setPath(url.path() + dir );
req.setUrl( url );
req.setRawHeader("Depth", "1");
QByteArray xml("<?xml version=\"1.0\" ?>\n"
"<d:propfind xmlns:d=\"DAV:\">\n"
@@ -237,8 +241,9 @@ void ownCloudInfo::slotGetQuotaFinished()
{
bool ok = false;
QNetworkReply *reply = qobject_cast<QNetworkReply *>(sender());
int http_result_code = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();
if (reply->attribute(QNetworkRequest::HttpStatusCodeAttribute) == 207) {
if (http_result_code == 207) {
// Parse DAV response
QXmlStreamReader reader(reply);
reader.addExtraNamespaceDeclaration(QXmlStreamNamespaceDeclaration("d", "DAV:"));
@@ -271,6 +276,7 @@ void ownCloudInfo::slotGetQuotaFinished()
emit quotaUpdated(total, quotaUsedBytes);
_lastEtag = etag;
} else {
qDebug() << "Quota request *not* successful, http result code is " << http_result_code;
_lastQuotaTotalBytes = 0;
_lastQuotaUsedBytes = 0;
}
+8 -1
Ver Arquivo
@@ -63,8 +63,15 @@ OwncloudSetupWizard::~OwncloudSetupWizard()
void OwncloudSetupWizard::runWizard(QObject* obj, const char* amember, QWidget *parent)
{
OwncloudSetupWizard *wiz = new OwncloudSetupWizard(parent);
static QPointer<OwncloudSetupWizard> wiz;
if (!wiz.isNull()) {
return;
}
wiz = new OwncloudSetupWizard(parent);
connect( wiz, SIGNAL(ownCloudWizardDone(int)), obj, amember);
connect( wiz, SIGNAL(ownCloudWizardDone(int)), wiz, SLOT(deleteLater()));
FolderMan::instance()->setSyncEnabled(false);
wiz->startWizard();
}
-9
Ver Arquivo
@@ -33,15 +33,6 @@ ownCloudTheme::ownCloudTheme()
// qDebug() << " ** running ownCloud theme!";
}
QString ownCloudTheme::appName() const
{
/* If this is changed, existing configs are not found any more
* because the value is used by QDesktopServices to find the config
* file. Be aware.
*/
return QLatin1String("ownCloud");
}
QString ownCloudTheme::configFileName() const
{
return QLatin1String("owncloud.cfg");
-1
Ver Arquivo
@@ -25,7 +25,6 @@ class ownCloudTheme : public Theme
public:
ownCloudTheme();
virtual QString appName() const;
QString configFileName() const;
QString about() const;
QPixmap splashScreen() const;
+36 -8
Ver Arquivo
@@ -66,7 +66,6 @@ SettingsDialog::SettingsDialog(Application *app, QWidget *parent) :
NetworkSettings *networkSettings = new NetworkSettings;
_ui->stack->addWidget(networkSettings);
connect(networkSettings, SIGNAL(proxySettingsChanged()), app, SLOT(slotSetupProxy()));
connect(networkSettings, SIGNAL(proxySettingsChanged()), FolderMan::instance(), SLOT(slotScheduleAllFolders()));
//connect(generalSettings, SIGNAL(resizeToSizeHint()), SLOT(resizeToSizeHint()));
@@ -96,6 +95,23 @@ SettingsDialog::SettingsDialog(Application *app, QWidget *parent) :
connect(showLogWindow, SIGNAL(triggered()), app, SLOT(slotOpenLogBrowser()));
addAction(showLogWindow);
int iconSize = 32;
QListWidget *listWidget = _ui->labelWidget;
int spacing = 20;
// reverse at least ~8 characters
int effectiveWidth = fontMetrics().averageCharWidth() * 8 + iconSize + spacing;
// less than ~16 characters, elide otherwise
int maxWidth = fontMetrics().averageCharWidth() * 16 + iconSize + spacing;
for (int i = 0; i < listWidget->count(); i++) {
QListWidgetItem *item = listWidget->item(i);
QFontMetrics fm(item->font());
int curWidth = fm.width(item->text()) + iconSize + spacing;
effectiveWidth = qMax(curWidth, effectiveWidth);
if (curWidth > maxWidth) item->setToolTip(item->text());
}
effectiveWidth = qMin(effectiveWidth, maxWidth);
listWidget->setFixedWidth(effectiveWidth);
MirallConfigFile cfg;
cfg.restoreGeometry(this);
}
@@ -114,13 +130,6 @@ void SettingsDialog::addAccount(const QString &title, QWidget *widget)
}
void SettingsDialog::closeEvent(QCloseEvent *event)
{
MirallConfigFile cfg;
cfg.saveGeometry(this);
QWidget::closeEvent(event);
}
void SettingsDialog::slotUpdateAccountState()
{
FolderMan *folderMan = FolderMan::instance();
@@ -128,4 +137,23 @@ void SettingsDialog::slotUpdateAccountState()
_accountItem->setIcon(Theme::instance()->syncStateIcon(state.status()));
}
void SettingsDialog::setGeneralErrors(const QStringList &errors)
{
_accountSettings->setGeneralErrors(errors);
}
// close event is not being called here
void SettingsDialog::reject() {
MirallConfigFile cfg;
cfg.saveGeometry(this);
QDialog::reject();
}
void SettingsDialog::accept() {
MirallConfigFile cfg;
cfg.saveGeometry(this);
QDialog::accept();
}
} // namespace Mirall
+3 -2
Ver Arquivo
@@ -40,9 +40,11 @@ public:
~SettingsDialog();
void addAccount(const QString &title, QWidget *widget);
void setGeneralErrors( const QStringList& errors );
protected:
void closeEvent(QCloseEvent *event);
void reject();
void accept();
protected slots:
void slotUpdateAccountState();
@@ -51,7 +53,6 @@ private:
Ui::SettingsDialog *_ui;
AccountSettings *_accountSettings;
QListWidgetItem *_accountItem;
};
}
+2 -8
Ver Arquivo
@@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>704</width>
<height>299</height>
<width>693</width>
<height>457</height>
</rect>
</property>
<property name="windowTitle">
@@ -28,12 +28,6 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>200</width>
<height>16777215</height>
</size>
</property>
</widget>
</item>
<item row="0" column="1">
+4 -4
Ver Arquivo
@@ -22,13 +22,13 @@
class QSslError;
class QSslCertificate;
namespace Mirall
{
namespace Ui {
class SslErrorDialog;
}
namespace Mirall
{
class SslErrorDialog : public QDialog
{
Q_OBJECT
@@ -57,7 +57,7 @@ private:
QList<QSslCertificate> _unknownCerts;
QString _customConfigHandle;
::Ui::SslErrorDialog *_ui;
Ui::SslErrorDialog *_ui;
};
} // end namespace
+2 -2
Ver Arquivo
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>SslErrorDialog</class>
<widget class="QWidget" name="SslErrorDialog">
<class>Mirall::SslErrorDialog</class>
<widget class="QWidget" name="Mirall::SslErrorDialog">
<property name="geometry">
<rect>
<x>0</x>
+13
Ver Arquivo
@@ -1,3 +1,16 @@
/*
* Copyright (C) by Klaas Freitag <freitag@owncloud.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; version 2 of the License.
*
* 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.
*/
#ifndef SYNCFILEITEM_H
#define SYNCFILEITEM_H
+6 -1
Ver Arquivo
@@ -78,7 +78,12 @@ QString Theme::statusHeaderText( SyncResult::Status status ) const
QString Theme::appNameGUI() const
{
return appName();
return QLatin1String(APPLICATION_NAME);
}
QString Theme::appName() const
{
return QLatin1String(APPLICATION_SHORTNAME);
}
QString Theme::version() const
+10 -2
Ver Arquivo
@@ -48,7 +48,8 @@ public:
* Use and redefine this if the human readable name contains spaces,
* special chars and such.
*
* By default, appName() is returned.
* By default, the name is derived from the APPLICATION_NAME
* cmake variable.
*
* @return QString with human readable app name.
*/
@@ -61,9 +62,16 @@ public:
* it is used for config files etc. If you need a more sophisticated
* name in the GUI, redefine appNameGUI.
*
* By default, the name is derived from the APPLICATION_SHORTNAME
* cmake variable, and should be the same. This method is only
* reimplementable for legacy reasons.
*
* Warning: Do not modify this value, as many things, e.g. settings
* depend on it! You most likely want to modify \ref appNameGUI().
*
* @return QString with app name.
*/
virtual QString appName() const = 0;
virtual QString appName() const;
/**
* @brief configFileName
+43 -27
Ver Arquivo
@@ -17,6 +17,7 @@
#include <QCoreApplication>
#include <QSettings>
#include <QTextStream>
#include <QDir>
#include <QFile>
#include <QUrl>
@@ -26,6 +27,7 @@
#ifdef Q_OS_UNIX
#include <sys/statvfs.h>
#include <sys/types.h>
#include <unistd.h>
#endif
#include <stdarg.h>
@@ -36,6 +38,7 @@
#elif defined(Q_OS_WIN)
#include <shlobj.h>
#include <winbase.h>
#include <windows.h>
#endif
namespace Mirall {
@@ -107,28 +110,25 @@ QString Utility::octetsToString( qint64 octets )
static const qint64 gb = 1024 * mb;
static const qint64 tb = 1024 * gb;
QString s;
qreal value = octets;
if (octets >= tb) {
if (octets < 10*tb) {
return compactFormatDouble(qreal(octets)/qreal(tb), 1, QLatin1String("TB"));
}
return QString::number(qRound64(qreal(octets)/qreal(tb))) + QLatin1String(" TB");
s = QCoreApplication::translate("Utility", "%L1 TB");
value /= tb;
} else if (octets >= gb) {
if (octets < 10*gb) {
return compactFormatDouble(qreal(octets)/qreal(gb), 1, QLatin1String("GB"));
}
return QString::number(qRound64(qreal(octets)/qreal(gb))) + QLatin1String(" GB");
s = QCoreApplication::translate("Utility", "%L1 GB");
value /= gb;
} else if (octets >= mb) {
if (octets < 10*mb) {
return compactFormatDouble(qreal(octets)/qreal(mb), 1, QLatin1String("MB"));
}
return QString::number(qRound64(qreal(octets)/qreal(mb))) + QLatin1String(" MB");
s = QCoreApplication::translate("Utility", "%L1 MB");
value /= mb;
} else if (octets >= kb) {
return QString::number(qRound64(qreal(octets)/qreal(kb))) + QLatin1String(" KB");
} else if (octets == 1){
return QLatin1String("1 byte");
} else {
return QString::number(octets) + QLatin1String(" bytes");
s = QCoreApplication::translate("Utility", "%L1 kB");
value /= kb;
} else {
s = QCoreApplication::translate("Utility", "%L1 B");
}
return (value > 9.95) ? s.arg(qRound(value)) : s.arg(value, 0, 'g', 2);
}
// Qtified version of get_platforms() in csync_owncloud.c
@@ -286,16 +286,24 @@ void Utility::setLaunchOnStartup(const QString &appName, const QString& guiName,
qDebug() << "Could not create autostart directory";
return;
}
QSettings desktopFile(desktopFileLocation, QSettings::IniFormat);
desktopFile.beginGroup("Desktop Entry");
desktopFile.setValue(QLatin1String("Name"), guiName);
desktopFile.setValue(QLatin1String("GenericName"), QLatin1String("File Synchronizer"));
desktopFile.setValue(QLatin1String("Exec"), QCoreApplication::applicationFilePath());
desktopFile.setValue(QLatin1String("Terminal"), false);
desktopFile.setValue(QLatin1String("Icon"), appName);
desktopFile.setValue(QLatin1String("Categories"), QLatin1String("Network"));
desktopFile.setValue(QLatin1String("StartupNotify"), false);
desktopFile.endGroup();
QFile iniFile(desktopFileLocation);
if (!iniFile.open(QIODevice::WriteOnly)) {
qDebug() << "Could not write auto start entry" << desktopFileLocation;
return;
}
QTextStream ts(&iniFile);
ts.setCodec("UTF-8");
ts << QLatin1String("[Desktop Entry]") << endl
<< QLatin1String("Name=") << guiName << endl
<< QLatin1String("GenericName=") << QLatin1String("File Synchronizer") << endl
<< QLatin1String("Exec=") << QCoreApplication::applicationFilePath() << endl
<< QLatin1String("Terminal=") << "false" << endl
<< QLatin1String("Icon=") << appName << endl
<< QLatin1String("Categories=") << QLatin1String("Network") << endl
<< QLatin1String("Type=") << QLatin1String("Application") << endl
<< QLatin1String("StartupNotify=") << "false" << endl
<< QLatin1String("X-GNOME-Autostart-enabled=") << "true" << endl
;
} else {
if (!QFile::remove(desktopFileLocation)) {
qDebug() << "Could not remove autostart desktop file";
@@ -360,4 +368,12 @@ QString Utility::toCSyncScheme(const QString &urlStr)
return url.toString();
}
void Utility::sleep(int sec)
{
#ifdef Q_OS_WIN
::Sleep(sec*1000);
#else
::sleep(sec);
#endif
}
} // namespace Mirall
+1
Ver Arquivo
@@ -23,6 +23,7 @@ namespace Mirall {
namespace Utility
{
void sleep(int sec);
QString formatFingerprint( const QByteArray& );
void setupFavLink( const QString &folder );
QString octetsToString( qint64 octets );
+3 -3
Ver Arquivo
@@ -17,6 +17,7 @@
#include <QDir>
#include <QFileDialog>
#include <QUrl>
#include <QTimer>
#include "QProgressIndicator.h"
@@ -26,7 +27,6 @@
#include "mirall/theme.h"
#include "mirall/mirallconfigfile.h"
#include "creds/abstractcredentials.h"
namespace Mirall
{
@@ -89,8 +89,8 @@ void OwncloudAdvancedSetupPage::initializePage()
// call to init label
updateStatus();
// TODO: focus
_ui.pbSelectLocalFolder->setFocus();
// ensure "next" gets the focus, not obSelectLocalFolder
QTimer::singleShot(0, wizard()->button(QWizard::NextButton), SLOT(setFocus()));
}
// Called if the user changes the user- or url field. Adjust the texts and
+3
Ver Arquivo
@@ -34,6 +34,9 @@
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item>
+6 -1
Ver Arquivo
@@ -108,6 +108,12 @@
<property name="text">
<string>TextLabel</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="4" column="0" colspan="3">
@@ -121,7 +127,6 @@
<zorder>horizontalSpacer</zorder>
<zorder>verticalSpacer</zorder>
<zorder>horizontalSpacer_2</zorder>
<zorder>horizontalLayoutWidget</zorder>
<zorder>topLabel</zorder>
<zorder>bottomLabel</zorder>
</widget>
+3
Ver Arquivo
@@ -19,6 +19,9 @@
<property name="text">
<string>TextLabel</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0">
-5
Ver Arquivo
@@ -1,6 +1,5 @@
*.filepart
*~
*.bak
*.part
*.crdownload
@@ -17,10 +16,6 @@ csync_journal.db.ctmp
desktop.ini
*.kate-swp
*.aux
*.nav
*.out
*.toc
*_conflict-*
]*.~*
+1 -1
Ver Arquivo
@@ -10,7 +10,7 @@ macro(owncloud_add_test test_class)
add_executable(${OWNCLOUD_TEST_CLASS}Test test${OWNCLOUD_TEST_CLASS_LOWERCASE}.cpp ${${OWNCLOUD_TEST_CLASS}_MOCS})
target_link_libraries(${OWNCLOUD_TEST_CLASS}Test
${APPLICATION_SHORTNAME}sync
${APPLICATION_EXECUTABLE}sync
${QT_QTTEST_LIBRARY}
${QT_QTCORE_LIBRARY}
)
+38 -16
Ver Arquivo
@@ -26,33 +26,55 @@ private slots:
}
void testOctetsToString()
{
QVERIFY(octetsToString(1) == "1 byte");
QVERIFY(octetsToString(2) == "2 bytes");
QVERIFY(octetsToString(1024) == "1 KB");
QVERIFY(octetsToString(1024*1024) == "1 MB");
QVERIFY(octetsToString(1024LL*1024*1024) == "1 GB");
QVERIFY(octetsToString(1024LL*1024*1024*1024) == "1 TB");
QLocale::setDefault(QLocale("en"));
QCOMPARE(octetsToString(999) , QString("999 B"));
QCOMPARE(octetsToString(1000) , QString("1,000 B"));
QCOMPARE(octetsToString(1010) , QString("1,010 B"));
QCOMPARE(octetsToString(1024) , QString("1 kB"));
QCOMPARE(octetsToString(1110) , QString("1.1 kB"));
QCOMPARE(octetsToString(9110) , QString("8.9 kB"));
QCOMPARE(octetsToString(9910) , QString("9.7 kB"));
QCOMPARE(octetsToString(9999) , QString("9.8 kB"));
QCOMPARE(octetsToString(10240) , QString("10 kB"));
QCOMPARE(octetsToString(123456) , QString("121 kB"));
QCOMPARE(octetsToString(1234567) , QString("1.2 MB"));
QCOMPARE(octetsToString(12345678) , QString("12 MB"));
QCOMPARE(octetsToString(123456789) , QString("118 MB"));
QCOMPARE(octetsToString(1000LL*1000*1000 * 5) , QString("4.7 GB"));
QCOMPARE(octetsToString(1024LL*1024*1024 * 5) , QString("5 GB"));
QCOMPARE(octetsToString(1), QString("1 B"));
QCOMPARE(octetsToString(2), QString("2 B"));
QCOMPARE(octetsToString(1024), QString("1 kB"));
QCOMPARE(octetsToString(1024*1024), QString("1 MB"));
QCOMPARE(octetsToString(1024LL*1024*1024), QString("1 GB"));
QCOMPARE(octetsToString(1024LL*1024*1024*1024), QString("1 TB"));
}
void testLaunchOnStartup()
{
const QString appName = "testLaunchOnStartup";
const QString guiName = "LaunchOnStartup GUI Name";
qsrand(QDateTime::currentDateTime().toTime_t());
QString postfix = QString::number(qrand());
QVERIFY(hasLaunchOnStartup(appName) == false);
setLaunchOnStartup(appName, guiName, true);
QVERIFY(hasLaunchOnStartup(appName) == true);
setLaunchOnStartup(appName, guiName, false);
QVERIFY(hasLaunchOnStartup(appName) == false);
const QString appName = QString::fromLatin1("testLaunchOnStartup.%1").arg(postfix);
const QString guiName = "LaunchOnStartup GUI Name";
QVERIFY(hasLaunchOnStartup(appName) == false);
setLaunchOnStartup(appName, guiName, true);
QVERIFY(hasLaunchOnStartup(appName) == true);
setLaunchOnStartup(appName, guiName, false);
QVERIFY(hasLaunchOnStartup(appName) == false);
}
void testToCSyncScheme()
{
QVERIFY(toCSyncScheme("http://example.com/owncloud/") ==
QVERIFY(toCSyncScheme("http://example.com/owncloud/") ==
"owncloud://example.com/owncloud/");
QVERIFY(toCSyncScheme("https://example.com/owncloud/") ==
QVERIFY(toCSyncScheme("https://example.com/owncloud/") ==
"ownclouds://example.com/owncloud/");
}
}
};
#endif
Arquivo binário não exibido.

Antes

Largura:  |  Altura:  |  Tamanho: 739 B

Depois

Largura:  |  Altura:  |  Tamanho: 781 B

+148 -105
Ver Arquivo
@@ -227,112 +227,112 @@
<context>
<name>Mirall::Application</name>
<message>
<location filename="../src/mirall/application.cpp" line="246"/>
<location filename="../src/mirall/application.cpp" line="252"/>
<source>%1 Sync Started</source>
<translation>%1 Sincronització iniciada</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/application.cpp" line="247"/>
<location filename="../src/mirall/application.cpp" line="253"/>
<source>Sync started for %n configured sync folder(s).</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="319"/>
<location filename="../src/mirall/application.cpp" line="325"/>
<source>Open %1 in browser</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="321"/>
<location filename="../src/mirall/application.cpp" line="327"/>
<source>Calculating quota...</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="323"/>
<location filename="../src/mirall/application.cpp" line="329"/>
<source>Unknown status</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="325"/>
<location filename="../src/mirall/application.cpp" line="331"/>
<source>Settings...</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="326"/>
<location filename="../src/mirall/application.cpp" line="332"/>
<source>Details...</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="331"/>
<location filename="../src/mirall/application.cpp" line="337"/>
<source>Help</source>
<translation>Ajuda</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="333"/>
<location filename="../src/mirall/application.cpp" line="339"/>
<source>Quit %1</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="383"/>
<location filename="../src/mirall/application.cpp" line="389"/>
<source>Open %1 folder</source>
<translation>Obre la carpeta %1</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="526"/>
<location filename="../src/mirall/application.cpp" line="537"/>
<source>%1% of %2 in use</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="598"/>
<location filename="../src/mirall/application.cpp" line="609"/>
<source>Up to date</source>
<translation>Actualitzat</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="362"/>
<location filename="../src/mirall/application.cpp" line="368"/>
<source>None.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="366"/>
<location filename="../src/mirall/application.cpp" line="372"/>
<source>Recent Changes</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="393"/>
<location filename="../src/mirall/application.cpp" line="399"/>
<source>Managed Folders:</source>
<translation>Fitxers gestionats:</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="396"/>
<location filename="../src/mirall/application.cpp" line="402"/>
<source>Open folder &apos;%1&apos;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="519"/>
<location filename="../src/mirall/application.cpp" line="530"/>
<source>Quota n/a</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="552"/>
<location filename="../src/mirall/application.cpp" line="563"/>
<source>No items synced recently</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="561"/>
<location filename="../src/mirall/application.cpp" line="572"/>
<source>%1 (%2, %3)</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="576"/>
<location filename="../src/mirall/application.cpp" line="587"/>
<source>Syncing %1 of %2 (%3 of %4) </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="814"/>
<location filename="../src/mirall/application.cpp" line="825"/>
<source>Folder %1: %2</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="820"/>
<location filename="../src/mirall/application.cpp" line="831"/>
<source>No sync folders configured.</source>
<translation>No hi ha fitxers de sincronització configurats</translation>
</message>
@@ -456,28 +456,28 @@
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="143"/>
<source>CSync failed due to not handled permission deniend.</source>
<translation>CSync ha fallat en no implementar el permís denegat.</translation>
<source>CSync: Permission deniend.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="146"/>
<source>CSync failed to find a specific file.</source>
<translation>CSync ha fallat en trobar un fitxer específic.</translation>
<source>CSync: File not found.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="149"/>
<source>CSync tried to create a directory that already exists.</source>
<translation>CSync ha intentat crear una carpeta que ja existeix.</translation>
<source>CSync: Directory already exists.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="152"/>
<source>CSync: No space on %1 server available.</source>
<translation>CSync: No hi ha espai disponible al servidor %1.</translation>
<source>CSync: No space left on %1 server.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="155"/>
<source>CSync unspecified error.</source>
<translation>Error inespecífic de CSync.</translation>
<source>CSync: unspecified error.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="158"/>
@@ -539,100 +539,100 @@
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>New file available</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>&apos;%1&apos; has been synced to this machine.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>New files available</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>&apos;%1&apos; and %n other file(s) have been synced to this machine.</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>File removed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>&apos;%1&apos; has been removed.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>Files removed</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>&apos;%1&apos; and %n other file(s) have been removed.</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>File updated</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>&apos;%1&apos; has been updated.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>Files updated</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>&apos;%1&apos; and %n other file(s) have been updated.</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="392"/>
<location filename="../src/mirall/folder.cpp" line="402"/>
<source>Error</source>
<translation>Error</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="421"/>
<location filename="../src/mirall/folder.cpp" line="431"/>
<source>The CSync thread terminated.</source>
<translation>El fil de CSync ha acabat.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="661"/>
<location filename="../src/mirall/folder.cpp" line="675"/>
<source>This sync would remove all the files in the local sync folder '%1'.
If you or your administrator have reset your account on the server, choose &quot;Keep files&quot;. If you want your data to be removed, choose &quot;Remove all files&quot;.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="664"/>
<location filename="../src/mirall/folder.cpp" line="678"/>
<source>This sync would remove all the files in the sync folder '%1'.
This might be because the folder was silently reconfigured, or that all the file were manually removed.
Are you sure you want to perform this operation?</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="668"/>
<location filename="../src/mirall/folder.cpp" line="682"/>
<source>Remove All Files?</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="670"/>
<location filename="../src/mirall/folder.cpp" line="684"/>
<source>Remove all files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="671"/>
<location filename="../src/mirall/folder.cpp" line="685"/>
<source>Keep files</source>
<translation type="unfinished"/>
</message>
@@ -640,57 +640,57 @@ Are you sure you want to perform this operation?</source>
<context>
<name>Mirall::FolderMan</name>
<message>
<location filename="../src/mirall/folderman.cpp" line="133"/>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<source>Could not reset folder state</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<location filename="../src/mirall/folderman.cpp" line="135"/>
<source>An old sync journal &apos;%1&apos; was found, but could not be removed. Please make sure that no application is currently using it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="566"/>
<location filename="../src/mirall/folderman.cpp" line="567"/>
<source>Undefined State.</source>
<translation>Estat indefinit.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="569"/>
<location filename="../src/mirall/folderman.cpp" line="570"/>
<source>Waits to start syncing.</source>
<translation>Espera per començar la sincronització.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="572"/>
<location filename="../src/mirall/folderman.cpp" line="573"/>
<source>Preparing for sync.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="575"/>
<location filename="../src/mirall/folderman.cpp" line="576"/>
<source>Sync is running.</source>
<translation>S&apos;està sincronitzant.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="578"/>
<location filename="../src/mirall/folderman.cpp" line="579"/>
<source>Server is currently not available.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="581"/>
<location filename="../src/mirall/folderman.cpp" line="582"/>
<source>Last Sync was successful.</source>
<translation>La darrera sincronització va ser correcta.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="586"/>
<location filename="../src/mirall/folderman.cpp" line="587"/>
<source>Last Sync was successful, but with warnings on individual files.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="589"/>
<location filename="../src/mirall/folderman.cpp" line="590"/>
<source>Setup Error.</source>
<translation>Error de configuració.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="595"/>
<location filename="../src/mirall/folderman.cpp" line="596"/>
<source>%1 (Sync is paused)</source>
<translation type="unfinished"/>
</message>
@@ -717,7 +717,7 @@ Are you sure you want to perform this operation?</source>
<context>
<name>Mirall::FolderWatcherPrivate</name>
<message>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="54"/>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="53"/>
<source>Could not monitor directories due to system limitations.
The application will not work reliably. Please check the
documentation for possible fixes.</source>
@@ -914,17 +914,17 @@ Checked items will also be deleted if they prevent a directory from being remove
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="60"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="57"/>
<source>3</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="65"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="62"/>
<source>4</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="73"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="70"/>
<source>TextLabel</source>
<translation>TextLabel</translation>
</message>
@@ -965,51 +965,66 @@ Checked items will also be deleted if they prevent a directory from being remove
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="120"/>
<source>File ignored.</source>
<source>Soft Link ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="121"/>
<source>The file was ignored because it is listed in the clients ignore list
or the filename contains characters that are not syncable
in a cross platform environment.</source>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="125"/>
<source>Directory ignored.</source>
<location filename="../src/mirall/itemprogressdialog.cpp" line="124"/>
<source>file</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="126"/>
<source>The directory was ignored because it is listed in the clients
ignore list or the directory name contains
characters that are not syncable in a cross platform environment.</source>
<source>directory</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="130"/>
<source>Soft Link ignored.</source>
<location filename="../src/mirall/itemprogressdialog.cpp" line="128"/>
<source>The %1 was ignored because it is listed in the clients ignore list
or the %1 name contains characters that are not syncable
in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="131"/>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories.</source>
<source>Item ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="133"/>
<source>%1 on ignore list</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="134"/>
<source>Ignored.</source>
<source>The %1 was skipped because it is listed on the clients
list of names to ignore</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="137"/>
<source>Conflict file.</source>
<source>Invalid characters</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="138"/>
<source>The %1 name contains one or more invalid characters which break
syncing in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="143"/>
<source>Conflict file.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="144"/>
<source>The file was changed on server and local repository and as a result it
created a so called conflict. The local change is copied to the conflict
file while the file from the server side is available under the original
@@ -1075,23 +1090,23 @@ name</source>
<translation>Desa el fitxer de registre al disc per depuració</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="162"/>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="164"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Error</source>
<translation>Error</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="163"/>
<location filename="../src/mirall/logbrowser.cpp" line="165"/>
<source>&lt;nobr&gt;File &apos;%1&apos;&lt;br/&gt;cannot be opened for writing.&lt;br/&gt;&lt;br/&gt;The log output can &lt;b&gt;not&lt;/b&gt; be saved!&lt;/nobr&gt;</source>
<translation>&lt;nobr&gt;El fitxer &apos;%1&apos;&lt;br/&gt;no es pot obrir en mode escriptura.&lt;br/&gt;&lt;br/&gt;La sortida del registre &lt;b&gt;no&lt;/b&gt; es pot desar!&lt;/nobr&gt;</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="208"/>
<location filename="../src/mirall/logbrowser.cpp" line="210"/>
<source>Save log file</source>
<translation>Desa el fitxer de registre</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Could not write to log file </source>
<translation>No s&apos;ha pogut escriure el fitxer de registre</translation>
</message>
@@ -1145,29 +1160,29 @@ name</source>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="188"/>
<location filename="../src/mirall/networksettings.ui" line="281"/>
<location filename="../src/mirall/networksettings.ui" line="287"/>
<source>Limit to</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="210"/>
<location filename="../src/mirall/networksettings.ui" line="306"/>
<location filename="../src/mirall/networksettings.ui" line="312"/>
<source>KBytes/s</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="232"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>No Limit</source>
<location filename="../src/mirall/networksettings.ui" line="270"/>
<source>No limit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="258"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>Upload Bandwidth</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="271"/>
<location filename="../src/mirall/networksettings.ui" line="277"/>
<source>Limit automatically</source>
<translation type="unfinished"/>
</message>
@@ -1913,6 +1928,34 @@ name</source>
<translation>Connexió SSL</translation>
</message>
</context>
<context>
<name>Utility</name>
<message>
<location filename="../src/mirall/utility.cpp" line="114"/>
<source>%L1 TB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="117"/>
<source>%L1 GB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="120"/>
<source>%L1 MB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="123"/>
<source>%L1 kB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="126"/>
<source>%L1 B</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>main.cpp</name>
<message>
@@ -1929,7 +1972,7 @@ name</source>
<context>
<name>ownCloudTheme</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="99"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="90"/>
<source>If you don&apos;t have an ownCloud server yet, see &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt; for more info.</source>
<comment>Top text in setup wizard. Keep short!</comment>
<translation type="unfinished"/>
@@ -1938,12 +1981,12 @@ name</source>
<context>
<name>ownCloudTheme::about()</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="57"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="48"/>
<source>&lt;p&gt;&lt;small&gt;Built from Git revision &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt; on %3, %4 using OCsync %5 and Qt %6.&lt;/small&gt;&lt;p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="65"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="56"/>
<source>&lt;p&gt;Version %2. For more information visit &lt;a href=&quot;%3&quot;&gt;%4&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;small&gt;By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.&lt;br&gt;Based on Mirall by Duncan Mac-Vicar P.&lt;/small&gt;&lt;/p&gt;%7</source>
<translation type="unfinished"/>
</message>
@@ -1954,13 +1997,13 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="31"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="43"/>
<source>Download</source>
<translation type="unfinished"/>
<translation>Baixa</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="34"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="47"/>
<source>Upload</source>
<translation type="unfinished"/>
<translation>Puja</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="37"/>
@@ -1992,7 +2035,7 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="59"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="107"/>
<source>deleted</source>
<translation type="unfinished"/>
<translation>esborrat</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="74"/>
@@ -2026,7 +2069,7 @@ name</source>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="104"/>
<source>delete</source>
<translation type="unfinished"/>
<translation>elimina</translation>
</message>
</context>
<context>
@@ -2034,22 +2077,22 @@ name</source>
<message>
<location filename="../src/mirall/theme.cpp" line="48"/>
<source>Status undefined</source>
<translation type="unfinished"/>
<translation>Estat indefinit</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="51"/>
<source>Waiting to start sync</source>
<translation type="unfinished"/>
<translation>Pendent d&apos;iniciar la sincronització</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="54"/>
<source>Sync is running</source>
<translation type="unfinished"/>
<translation>La sincronització s&apos;està executant</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="57"/>
<source>Sync Success</source>
<translation type="unfinished"/>
<translation>Sincronització amb èxit</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="60"/>
@@ -2059,12 +2102,12 @@ name</source>
<message>
<location filename="../src/mirall/theme.cpp" line="63"/>
<source>Sync Error - Click info button for details.</source>
<translation type="unfinished"/>
<translation>Error de sincronització - Feu clic al botó per més detalls.</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="66"/>
<source>Setup Error</source>
<translation type="unfinished"/>
<translation>Error de configuració</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="69"/>
+178 -132
Ver Arquivo
@@ -171,7 +171,7 @@
<message>
<location filename="../src/mirall/accountsettings.cpp" line="453"/>
<source>Connected to &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt;.</source>
<translation type="unfinished"/>
<translation>Připojeno k &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt;.</translation>
</message>
<message>
<location filename="../src/mirall/accountsettings.cpp" line="454"/>
@@ -227,112 +227,112 @@
<context>
<name>Mirall::Application</name>
<message>
<location filename="../src/mirall/application.cpp" line="246"/>
<location filename="../src/mirall/application.cpp" line="252"/>
<source>%1 Sync Started</source>
<translation>Synchronizace %1 zahájena</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/application.cpp" line="247"/>
<location filename="../src/mirall/application.cpp" line="253"/>
<source>Sync started for %n configured sync folder(s).</source>
<translation><numerusform>Synchronizace zahájena pro %n nastavený adresář.</numerusform><numerusform>Synchronizace zahájena pro %n nastavené adresáře.</numerusform><numerusform>Synchronizace zahájena pro %n nastavených adresářů.</numerusform></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="319"/>
<location filename="../src/mirall/application.cpp" line="325"/>
<source>Open %1 in browser</source>
<translation>Otevřít %1 v prohlížeči</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="321"/>
<location filename="../src/mirall/application.cpp" line="327"/>
<source>Calculating quota...</source>
<translation>Počítám kvóty...</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="323"/>
<location filename="../src/mirall/application.cpp" line="329"/>
<source>Unknown status</source>
<translation>Neznámý stav</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="325"/>
<location filename="../src/mirall/application.cpp" line="331"/>
<source>Settings...</source>
<translation>Nastavení...</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="326"/>
<location filename="../src/mirall/application.cpp" line="332"/>
<source>Details...</source>
<translation>Podrobnosti...</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="331"/>
<location filename="../src/mirall/application.cpp" line="337"/>
<source>Help</source>
<translation>Nápověda</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="333"/>
<location filename="../src/mirall/application.cpp" line="339"/>
<source>Quit %1</source>
<translation>Ukončit %1</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="383"/>
<location filename="../src/mirall/application.cpp" line="389"/>
<source>Open %1 folder</source>
<translation>Otevřít složku %1</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="526"/>
<location filename="../src/mirall/application.cpp" line="537"/>
<source>%1% of %2 in use</source>
<translation>%1% z %2 v používání</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="598"/>
<location filename="../src/mirall/application.cpp" line="609"/>
<source>Up to date</source>
<translation>Aktuální</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="362"/>
<location filename="../src/mirall/application.cpp" line="368"/>
<source>None.</source>
<translation>Nic.</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="366"/>
<location filename="../src/mirall/application.cpp" line="372"/>
<source>Recent Changes</source>
<translation>Poslední změny</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="393"/>
<location filename="../src/mirall/application.cpp" line="399"/>
<source>Managed Folders:</source>
<translation>Spravované složky:</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="396"/>
<location filename="../src/mirall/application.cpp" line="402"/>
<source>Open folder &apos;%1&apos;</source>
<translation>Otevřít složku &apos;%1&apos;</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="519"/>
<location filename="../src/mirall/application.cpp" line="530"/>
<source>Quota n/a</source>
<translation>Kvóta nedostupná</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="552"/>
<location filename="../src/mirall/application.cpp" line="563"/>
<source>No items synced recently</source>
<translation>Žádné položky nebyly nedávno synchronizovány</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="561"/>
<location filename="../src/mirall/application.cpp" line="572"/>
<source>%1 (%2, %3)</source>
<translation>%1 (%2, %3)</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="576"/>
<location filename="../src/mirall/application.cpp" line="587"/>
<source>Syncing %1 of %2 (%3 of %4) </source>
<translation>Synchronizuji %1 z %2 (%3 z %4)</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="814"/>
<location filename="../src/mirall/application.cpp" line="825"/>
<source>Folder %1: %2</source>
<translation>Složka %1: %2</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="820"/>
<location filename="../src/mirall/application.cpp" line="831"/>
<source>No sync folders configured.</source>
<translation>Nejsou nastaveny žádné synchronizované složky.</translation>
</message>
@@ -456,28 +456,28 @@
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="143"/>
<source>CSync failed due to not handled permission deniend.</source>
<translation>CSync selhalo z důvodu nezpracovaného odmítnutí práv.</translation>
<source>CSync: Permission deniend.</source>
<translation>CSync: Přístup zamítnut.</translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="146"/>
<source>CSync failed to find a specific file.</source>
<translation>CSync se nezdařilo najít požadovaný soubor.</translation>
<source>CSync: File not found.</source>
<translation>CSync: Soubor nenalezen.</translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="149"/>
<source>CSync tried to create a directory that already exists.</source>
<translation>CSync se pokusilo vytvořit adresář, který již existuje.</translation>
<source>CSync: Directory already exists.</source>
<translation>CSync: Adresář již existuje.</translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="152"/>
<source>CSync: No space on %1 server available.</source>
<translation>CSync: Nedostatek volného místa na serveru %1.</translation>
<source>CSync: No space left on %1 server.</source>
<translation>CSync: Nedostatek místa na serveru %1.</translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="155"/>
<source>CSync unspecified error.</source>
<translation>Nespecifikovaná chyba CSync.</translation>
<source>CSync: unspecified error.</source>
<translation>CSync: neznámá chyba.</translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="158"/>
@@ -536,87 +536,87 @@
<message>
<location filename="../src/mirall/folder.cpp" line="291"/>
<source>File %1</source>
<translation type="unfinished"/>
<translation>Soubor %1</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>New file available</source>
<translation>je k dispozici nový soubor</translation>
<translation>Je k dispozici nový soubor</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>&apos;%1&apos; has been synced to this machine.</source>
<translation>&apos;%1&apos; byl sesynchronizován na tento počítač.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>New files available</source>
<translation>Jsou k dispozici nové soubory</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>&apos;%1&apos; and %n other file(s) have been synced to this machine.</source>
<translation><numerusform>&apos;%1&apos; a další %n soubor(y) byl sesynchronizován na tento počítač.</numerusform><numerusform>&apos;%1&apos; a další %n soubor(y) byly sesynchronizovány na tento počítač.</numerusform><numerusform>&apos;%1&apos; a dalších %n soubor(ů) bylo sesynchronizováno na tento počítač.</numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>File removed</source>
<translation>Soubor odebrán</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>&apos;%1&apos; has been removed.</source>
<translation>&apos;%1&apos; bylo odebráno.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>Files removed</source>
<translation>Soubory odebrány</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>&apos;%1&apos; and %n other file(s) have been removed.</source>
<translation><numerusform>&apos;%1&apos; a další %n soubor(y) byly odebrány.</numerusform><numerusform>&apos;%1&apos; a další %n soubor(y) byly odebrány.</numerusform><numerusform>&apos;%1&apos; a dalších %n soubor(ů) bylo odebráno.</numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>File updated</source>
<translation>Soubor aktualizován</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>&apos;%1&apos; has been updated.</source>
<translation>&apos;%1&apos; byl aktualizován.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>Files updated</source>
<translation>Soubory aktualizovány</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>&apos;%1&apos; and %n other file(s) have been updated.</source>
<translation><numerusform>&apos;%1&apos; a další %n soubor(y) byly aktualizovány.</numerusform><numerusform>&apos;%1&apos; a další %n soubor(y) byly aktualizovány.</numerusform><numerusform>&apos;%1&apos; a dalších %n soubor(ů) bylo aktualizováno.</numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="392"/>
<location filename="../src/mirall/folder.cpp" line="402"/>
<source>Error</source>
<translation>Chyba</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="421"/>
<location filename="../src/mirall/folder.cpp" line="431"/>
<source>The CSync thread terminated.</source>
<translation>Vlákno CSync ukončeno.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="661"/>
<location filename="../src/mirall/folder.cpp" line="675"/>
<source>This sync would remove all the files in the local sync folder '%1'.
If you or your administrator have reset your account on the server, choose &quot;Keep files&quot;. If you want your data to be removed, choose &quot;Remove all files&quot;.</source>
<translation>Tato synchronizace by smazala všechny soubory v místní složce &apos;%1&apos;
Pokud jste vy nebo váš správce zresetovali účet na serveru, zvolte &quot;Ponechat soubory&quot;. Pokud chcete místní data odstranit, zvolte &quot;Odstranit všechny soubory&quot;.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="664"/>
<location filename="../src/mirall/folder.cpp" line="678"/>
<source>This sync would remove all the files in the sync folder '%1'.
This might be because the folder was silently reconfigured, or that all the file were manually removed.
Are you sure you want to perform this operation?</source>
@@ -625,17 +625,17 @@ Toto může být způsobeno změnou v nastavení synchronizace složky nebo tím
Opravdu chcete provést tuto akci?</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="668"/>
<location filename="../src/mirall/folder.cpp" line="682"/>
<source>Remove All Files?</source>
<translation>Odstranit všechny soubory?</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="670"/>
<location filename="../src/mirall/folder.cpp" line="684"/>
<source>Remove all files</source>
<translation>Odstranit všechny soubory</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="671"/>
<location filename="../src/mirall/folder.cpp" line="685"/>
<source>Keep files</source>
<translation>Ponechat soubory</translation>
</message>
@@ -643,57 +643,57 @@ Opravdu chcete provést tuto akci?</translation>
<context>
<name>Mirall::FolderMan</name>
<message>
<location filename="../src/mirall/folderman.cpp" line="133"/>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<source>Could not reset folder state</source>
<translation>Nelze obnovit stav složky</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<location filename="../src/mirall/folderman.cpp" line="135"/>
<source>An old sync journal &apos;%1&apos; was found, but could not be removed. Please make sure that no application is currently using it.</source>
<translation>Byl nalezen starý záznam synchronizace &apos;%1&apos;, ale nebylo možné jej odebrat. Ujistěte se, že není aktuálně používán jinou aplikací.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="566"/>
<location filename="../src/mirall/folderman.cpp" line="567"/>
<source>Undefined State.</source>
<translation>Nedefinovaný stav.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="569"/>
<location filename="../src/mirall/folderman.cpp" line="570"/>
<source>Waits to start syncing.</source>
<translation>Vyčkává na spuštění synchronizace.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="572"/>
<location filename="../src/mirall/folderman.cpp" line="573"/>
<source>Preparing for sync.</source>
<translation>Příprava na synchronizaci.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="575"/>
<location filename="../src/mirall/folderman.cpp" line="576"/>
<source>Sync is running.</source>
<translation>Synchronizace probíhá.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="578"/>
<location filename="../src/mirall/folderman.cpp" line="579"/>
<source>Server is currently not available.</source>
<translation>Server je nyní nedostupný.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="581"/>
<location filename="../src/mirall/folderman.cpp" line="582"/>
<source>Last Sync was successful.</source>
<translation>Poslední synchronizace byla úspěšná.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="586"/>
<location filename="../src/mirall/folderman.cpp" line="587"/>
<source>Last Sync was successful, but with warnings on individual files.</source>
<translation>Poslední synchronizace byla úspěšná, ale s varováním u některých souborů</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="589"/>
<location filename="../src/mirall/folderman.cpp" line="590"/>
<source>Setup Error.</source>
<translation>Chyba nastavení.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="595"/>
<location filename="../src/mirall/folderman.cpp" line="596"/>
<source>%1 (Sync is paused)</source>
<translation>%1 (Synchronizace je pozastavena)</translation>
</message>
@@ -720,13 +720,13 @@ Opravdu chcete provést tuto akci?</translation>
<context>
<name>Mirall::FolderWatcherPrivate</name>
<message>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="54"/>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="53"/>
<source>Could not monitor directories due to system limitations.
The application will not work reliably. Please check the
documentation for possible fixes.</source>
<translation>Nelze sledovat složky kvůli systémovým omezením.
Aplikace nebude pracovat spolehlivě. Zkontrolujte prosím
dokumentaci pro možnost opravy.</translation>
Aplikace nebude pracovat správně. Řiďte se prosím
dokumentací pro možnost opravy.</translation>
</message>
</context>
<context>
@@ -921,17 +921,17 @@ Zvolené položky budou smazány také v případě, že brání smazání adres
<translation>Detailní protokol synchronizace</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="60"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="57"/>
<source>3</source>
<translation>3</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="65"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="62"/>
<source>4</source>
<translation>4</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="73"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="70"/>
<source>TextLabel</source>
<translation>Textový štítek</translation>
</message>
@@ -972,56 +972,74 @@ Zvolené položky budou smazány také v případě, že brání smazání adres
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="120"/>
<source>File ignored.</source>
<translation>Soubor ignorován.</translation>
<source>Soft Link ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="121"/>
<source>The file was ignored because it is listed in the clients ignore list
or the filename contains characters that are not syncable
in a cross platform environment.</source>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="125"/>
<source>Directory ignored.</source>
<translation>Adresář ignorován.</translation>
<location filename="../src/mirall/itemprogressdialog.cpp" line="124"/>
<source>file</source>
<translation>soubor</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="126"/>
<source>The directory was ignored because it is listed in the clients
ignore list or the directory name contains
characters that are not syncable in a cross platform environment.</source>
<source>directory</source>
<translation>adresář</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="128"/>
<source>The %1 was ignored because it is listed in the clients ignore list
or the %1 name contains characters that are not syncable
in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="130"/>
<source>Soft Link ignored.</source>
<translation>Symbolický odkaz ignorován.</translation>
<location filename="../src/mirall/itemprogressdialog.cpp" line="131"/>
<source>Item ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="131"/>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories.</source>
<location filename="../src/mirall/itemprogressdialog.cpp" line="133"/>
<source>%1 on ignore list</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="134"/>
<source>Ignored.</source>
<translation>Ignorováno.</translation>
<source>The %1 was skipped because it is listed on the clients
list of names to ignore</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="137"/>
<source>Conflict file.</source>
<source>Invalid characters</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="138"/>
<source>The %1 name contains one or more invalid characters which break
syncing in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="143"/>
<source>Conflict file.</source>
<translation>Soubor s konfliktem.</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="144"/>
<source>The file was changed on server and local repository and as a result it
created a so called conflict. The local change is copied to the conflict
file while the file from the server side is available under the original
name</source>
<translation type="unfinished"/>
<translation>Soubor byl změněn na serveru i na lokálním disku, na základě čehož
byl vytvořen tzv. soubor s konfliktem. Změny v lokálním souboru budou
zkopírovány do souboru s konfliktem, přičemž soubor ze serveru bude
dostupný pod původním názvem</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="231"/>
@@ -1082,23 +1100,23 @@ name</source>
<translation>Uložit soubor záznamu na disk pro ladění.</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="162"/>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="164"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Error</source>
<translation>Chyba</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="163"/>
<location filename="../src/mirall/logbrowser.cpp" line="165"/>
<source>&lt;nobr&gt;File &apos;%1&apos;&lt;br/&gt;cannot be opened for writing.&lt;br/&gt;&lt;br/&gt;The log output can &lt;b&gt;not&lt;/b&gt; be saved!&lt;/nobr&gt;</source>
<translation>&lt;nobr&gt;Soubor &apos;%1&apos;&lt;br/&gt;nelze otevřít pro zápis.&lt;br/&gt;&lt;br/&gt;Výstup záznamu &lt;b&gt;nelze&lt;/b&gt; uložit.&lt;/nobr&gt;</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="208"/>
<location filename="../src/mirall/logbrowser.cpp" line="210"/>
<source>Save log file</source>
<translation>Uložit log</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Could not write to log file </source>
<translation>Nemohu zapisovat do log souboru</translation>
</message>
@@ -1152,29 +1170,29 @@ name</source>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="188"/>
<location filename="../src/mirall/networksettings.ui" line="281"/>
<location filename="../src/mirall/networksettings.ui" line="287"/>
<source>Limit to</source>
<translation>Omezit na</translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="210"/>
<location filename="../src/mirall/networksettings.ui" line="306"/>
<location filename="../src/mirall/networksettings.ui" line="312"/>
<source>KBytes/s</source>
<translation>KBytů/s</translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="232"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>No Limit</source>
<location filename="../src/mirall/networksettings.ui" line="270"/>
<source>No limit</source>
<translation>Bez limitu</translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="258"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>Upload Bandwidth</source>
<translation>Rychlost odesílání</translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="271"/>
<location filename="../src/mirall/networksettings.ui" line="277"/>
<source>Limit automatically</source>
<translation>Omezovat automaticky</translation>
</message>
@@ -1219,7 +1237,7 @@ name</source>
<message>
<location filename="../src/wizard/owncloudadvancedsetuppage.cpp" line="57"/>
<source>Connect...</source>
<translation type="unfinished"/>
<translation>Připojit...</translation>
</message>
<message>
<location filename="../src/wizard/owncloudadvancedsetuppage.cpp" line="107"/>
@@ -1234,7 +1252,7 @@ name</source>
<message>
<location filename="../src/wizard/owncloudadvancedsetuppage.cpp" line="116"/>
<source>&lt;p&gt;&lt;small&gt;&lt;strong&gt;Warning:&lt;/strong&gt; You currently have multiple folders configured. If you continue with the current settings, the folder configurations will be discarded and a single root folder sync will be created!&lt;/small&gt;&lt;/p&gt;</source>
<translation>&lt;p&gt;&lt;small&gt;&lt;strong&gt;Varování:&lt;/strong&gt; Aktuálně máte nastavenu synchronizaci více složek. Pokud budete pokračovat v tomto nastavení, nastavení složek bude zapomenuto a bude vytvořena synchronizace jedné kořenové složky!&lt;/small&gt;&lt;/p&gt;</translation>
<translation>&lt;p&gt;&lt;small&gt;&lt;strong&gt;Varování:&lt;/strong&gt; Aktuálně máte nastavenu synchronizaci více složek. Pokud budete pokračovat s tímto nastavení, nastavení složek bude zapomenuto a bude vytvořena synchronizace jedné kořenové složky!&lt;/small&gt;&lt;/p&gt;</translation>
</message>
<message>
<location filename="../src/wizard/owncloudadvancedsetuppage.cpp" line="123"/>
@@ -1323,7 +1341,7 @@ name</source>
<message>
<location filename="../src/mirall/owncloudsetupwizard.cpp" line="114"/>
<source>Trying to connect to %1 at %2 to determine authentication type...</source>
<translation>Pokouším se připojit k %1 na %2 pro zjištění typ ověření...</translation>
<translation>Pokouším se připojit k %1 na %2 pro zjištění typu ověření...</translation>
</message>
<message>
<location filename="../src/mirall/owncloudsetupwizard.cpp" line="162"/>
@@ -1920,6 +1938,34 @@ name</source>
<translation>SSL spojení</translation>
</message>
</context>
<context>
<name>Utility</name>
<message>
<location filename="../src/mirall/utility.cpp" line="114"/>
<source>%L1 TB</source>
<translation>%L1 TB</translation>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="117"/>
<source>%L1 GB</source>
<translation>%L1 GB</translation>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="120"/>
<source>%L1 MB</source>
<translation>%L1 MB</translation>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="123"/>
<source>%L1 kB</source>
<translation>%L1 kB</translation>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="126"/>
<source>%L1 B</source>
<translation>%L1 B</translation>
</message>
</context>
<context>
<name>main.cpp</name>
<message>
@@ -1936,7 +1982,7 @@ name</source>
<context>
<name>ownCloudTheme</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="99"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="90"/>
<source>If you don&apos;t have an ownCloud server yet, see &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt; for more info.</source>
<comment>Top text in setup wizard. Keep short!</comment>
<translation>Pokud zatím nemáte ownCloud server, získáte více informací na &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt;</translation>
@@ -1945,12 +1991,12 @@ name</source>
<context>
<name>ownCloudTheme::about()</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="57"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="48"/>
<source>&lt;p&gt;&lt;small&gt;Built from Git revision &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt; on %3, %4 using OCsync %5 and Qt %6.&lt;/small&gt;&lt;p&gt;</source>
<translation>&lt;p&gt;&lt;small&gt;Sestaveno z Gitu revize &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt; na %3, %4 s použitím OCsync %5 a Qt %6.&lt;/small&gt;&lt;p&gt;</translation>
</message>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="65"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="56"/>
<source>&lt;p&gt;Version %2. For more information visit &lt;a href=&quot;%3&quot;&gt;%4&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;small&gt;By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.&lt;br&gt;Based on Mirall by Duncan Mac-Vicar P.&lt;/small&gt;&lt;/p&gt;%7</source>
<translation>&lt;p&gt;Verze %2. Pro více informací navštivte &lt;a href=&quot;%3&quot;&gt;%4&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;small&gt;Vytvořili Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.&lt;br&gt;Založeno na Mirall od Duncan Mac-Vicar P.&lt;/small&gt;&lt;/p&gt;%7</translation>
</message>
@@ -1961,79 +2007,79 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="31"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="43"/>
<source>Download</source>
<translation type="unfinished"/>
<translation>Stáhnout</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="34"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="47"/>
<source>Upload</source>
<translation type="unfinished"/>
<translation>Odeslat</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="37"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="80"/>
<source>Context</source>
<translation type="unfinished"/>
<translation>Kontext</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="40"/>
<source>Inactive</source>
<translation type="unfinished"/>
<translation>Neaktivní</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="50"/>
<source>Start</source>
<translation type="unfinished"/>
<translation>Spuštění</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="53"/>
<source>Finished</source>
<translation type="unfinished"/>
<translation>Dokončeno</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="56"/>
<source>For deletion</source>
<translation type="unfinished"/>
<translation>Ke smazání</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="59"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="107"/>
<source>deleted</source>
<translation type="unfinished"/>
<translation>smazáno</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="74"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="86"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="92"/>
<source>downloading</source>
<translation type="unfinished"/>
<translation>stahování</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="77"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="89"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="95"/>
<source>uploading</source>
<translation type="unfinished"/>
<translation>odesílání</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="83"/>
<source>inactive</source>
<translation type="unfinished"/>
<translation>neaktivní</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="98"/>
<source>starting</source>
<translation type="unfinished"/>
<translation>spouštění</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="101"/>
<source>finished</source>
<translation type="unfinished"/>
<translation>dokončeno</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="104"/>
<source>delete</source>
<translation type="unfinished"/>
<translation>smazat</translation>
</message>
</context>
<context>
@@ -2041,47 +2087,47 @@ name</source>
<message>
<location filename="../src/mirall/theme.cpp" line="48"/>
<source>Status undefined</source>
<translation type="unfinished"/>
<translation>Nedefinovaný stav</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="51"/>
<source>Waiting to start sync</source>
<translation type="unfinished"/>
<translation>Čekám na zahájení synchronizace</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="54"/>
<source>Sync is running</source>
<translation type="unfinished"/>
<translation>Synchronizace běží</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="57"/>
<source>Sync Success</source>
<translation type="unfinished"/>
<translation>Synchronizace úspěšná</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="60"/>
<source>Sync Success, problems with individual files.</source>
<translation type="unfinished"/>
<translation>Synchronizace úspěšná, problémy u jednotlivých souborů.</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="63"/>
<source>Sync Error - Click info button for details.</source>
<translation type="unfinished"/>
<translation>Chyba synchronizace - klikněte na informační tlačítko pro podrobnosti.</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="66"/>
<source>Setup Error</source>
<translation type="unfinished"/>
<translation>Chyba nastavení</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="69"/>
<source>The server is currently unavailable</source>
<translation type="unfinished"/>
<translation>Server je momentálně nedostupný</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="72"/>
<source>Preparing to sync</source>
<translation type="unfinished"/>
<translation>Připravuji na synchronizaci</translation>
</message>
</context>
</TS>
+170 -127
Ver Arquivo
@@ -172,7 +172,7 @@ Diese Funktion ist nur für Wartungszwecke gedacht. Es werden keine Dateien entf
<message>
<location filename="../src/mirall/accountsettings.cpp" line="453"/>
<source>Connected to &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt;.</source>
<translation type="unfinished"/>
<translation>Verbunden mit &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt;.</translation>
</message>
<message>
<location filename="../src/mirall/accountsettings.cpp" line="454"/>
@@ -228,112 +228,112 @@ Diese Funktion ist nur für Wartungszwecke gedacht. Es werden keine Dateien entf
<context>
<name>Mirall::Application</name>
<message>
<location filename="../src/mirall/application.cpp" line="246"/>
<location filename="../src/mirall/application.cpp" line="252"/>
<source>%1 Sync Started</source>
<translation>%1 Sync gestartet</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/application.cpp" line="247"/>
<location filename="../src/mirall/application.cpp" line="253"/>
<source>Sync started for %n configured sync folder(s).</source>
<translation><numerusform>Synchronisation wurde für %n konfigurierten Sync-Ordner gestartet.</numerusform><numerusform>Synchronisation wurde für %n konfigurierte Sync-Ordner gestartet.</numerusform></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="319"/>
<location filename="../src/mirall/application.cpp" line="325"/>
<source>Open %1 in browser</source>
<translation>%1 im Browser öffnen</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="321"/>
<location filename="../src/mirall/application.cpp" line="327"/>
<source>Calculating quota...</source>
<translation>Berechne Quote...</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="323"/>
<location filename="../src/mirall/application.cpp" line="329"/>
<source>Unknown status</source>
<translation>Unbekannter Status</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="325"/>
<location filename="../src/mirall/application.cpp" line="331"/>
<source>Settings...</source>
<translation>Einstellungen</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="326"/>
<location filename="../src/mirall/application.cpp" line="332"/>
<source>Details...</source>
<translation>Details...</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="331"/>
<location filename="../src/mirall/application.cpp" line="337"/>
<source>Help</source>
<translation>Hilfe</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="333"/>
<location filename="../src/mirall/application.cpp" line="339"/>
<source>Quit %1</source>
<translation>Beenden %1</translation>
<translation>%1 beenden</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="383"/>
<location filename="../src/mirall/application.cpp" line="389"/>
<source>Open %1 folder</source>
<translation>Ordner %1 öffnen</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="526"/>
<location filename="../src/mirall/application.cpp" line="537"/>
<source>%1% of %2 in use</source>
<translation>%1% von %2 benutzt</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="598"/>
<location filename="../src/mirall/application.cpp" line="609"/>
<source>Up to date</source>
<translation>Aktuell</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="362"/>
<location filename="../src/mirall/application.cpp" line="368"/>
<source>None.</source>
<translation>Keine.</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="366"/>
<location filename="../src/mirall/application.cpp" line="372"/>
<source>Recent Changes</source>
<translation>Letzte Änderungen</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="393"/>
<location filename="../src/mirall/application.cpp" line="399"/>
<source>Managed Folders:</source>
<translation>Verwaltete Ordner:</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="396"/>
<location filename="../src/mirall/application.cpp" line="402"/>
<source>Open folder &apos;%1&apos;</source>
<translation>Ordner &apos;%1&apos; öffnen</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="519"/>
<location filename="../src/mirall/application.cpp" line="530"/>
<source>Quota n/a</source>
<translation>Quote unbekannt</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="552"/>
<location filename="../src/mirall/application.cpp" line="563"/>
<source>No items synced recently</source>
<translation>Keine kürzlich synchronisierten Elemente</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="561"/>
<location filename="../src/mirall/application.cpp" line="572"/>
<source>%1 (%2, %3)</source>
<translation>%1 (%2, %3)</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="576"/>
<location filename="../src/mirall/application.cpp" line="587"/>
<source>Syncing %1 of %2 (%3 of %4) </source>
<translation>Synchronisiere %1 von %2 (%3 von %4) </translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="814"/>
<location filename="../src/mirall/application.cpp" line="825"/>
<source>Folder %1: %2</source>
<translation>Ordner %1: %2</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="820"/>
<location filename="../src/mirall/application.cpp" line="831"/>
<source>No sync folders configured.</source>
<translation>Keine Sync-Ordner konfiguriert.</translation>
</message>
@@ -457,28 +457,28 @@ Diese Funktion ist nur für Wartungszwecke gedacht. Es werden keine Dateien entf
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="143"/>
<source>CSync failed due to not handled permission deniend.</source>
<translation>CSync wegen fehlender Berechtigung fehlgeschlagen.</translation>
<source>CSync: Permission deniend.</source>
<translation>CSync: Berechtigung verweigert.</translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="146"/>
<source>CSync failed to find a specific file.</source>
<translation>CSync konnte eine bestimmte Datei nicht finden.</translation>
<source>CSync: File not found.</source>
<translation>CSync: Datei nicht gefunden.</translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="149"/>
<source>CSync tried to create a directory that already exists.</source>
<translation>CSync versuchte, ein Verzeichnis zu erstellen, welches bereits existiert.</translation>
<source>CSync: Directory already exists.</source>
<translation>CSync: Verzeichnis existiert bereits.</translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="152"/>
<source>CSync: No space on %1 server available.</source>
<translation>CSync: Kein Platz auf Server %1 frei.</translation>
<source>CSync: No space left on %1 server.</source>
<translation>CSync: Nicht genügend Speicherplatz auf %1 Server verfügbar.</translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="155"/>
<source>CSync unspecified error.</source>
<translation>CSync unbekannter Fehler.</translation>
<source>CSync: unspecified error.</source>
<translation>CSync: unbekannter Fehler.</translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="158"/>
@@ -537,87 +537,87 @@ Diese Funktion ist nur für Wartungszwecke gedacht. Es werden keine Dateien entf
<message>
<location filename="../src/mirall/folder.cpp" line="291"/>
<source>File %1</source>
<translation type="unfinished"/>
<translation>Datei %1</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>New file available</source>
<translation>Neue Datei verfügbar</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>&apos;%1&apos; has been synced to this machine.</source>
<translation>&apos;%1&apos; wurde mit diesem Gerät synchronisiert.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>New files available</source>
<translation>Neue Dateien sind verfügbar</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>&apos;%1&apos; and %n other file(s) have been synced to this machine.</source>
<translation><numerusform>&apos;%1&apos; und %n andere Datei(en) wurde(n) mit diesem Gerät synchronisiert.</numerusform><numerusform>&apos;%1&apos; und %n andere Datei(en) wurde(n) mit diesem Gerät synchronisiert.</numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>File removed</source>
<translation>Datei gelöscht</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>&apos;%1&apos; has been removed.</source>
<translation>&apos;%1&apos; wurde gelöscht.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>Files removed</source>
<translation>Dateien gelöscht</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>&apos;%1&apos; and %n other file(s) have been removed.</source>
<translation><numerusform>%1&apos; und %n andere Datei(en) wurden entfernt.</numerusform><numerusform>%1&apos; und %n andere Datei(en) wurden entfernt.</numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>File updated</source>
<translation>Datei aktualisiert</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>&apos;%1&apos; has been updated.</source>
<translation>&apos;%1&apos; wurde aktualisiert.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>Files updated</source>
<translation>Dateien aktualisiert</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>&apos;%1&apos; and %n other file(s) have been updated.</source>
<translation><numerusform>%1&apos; und %n andere Datei(en) wurden aktualisiert.</numerusform><numerusform>%1&apos; und %n andere Datei(en) wurden aktualisiert.</numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="392"/>
<location filename="../src/mirall/folder.cpp" line="402"/>
<source>Error</source>
<translation>Fehler</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="421"/>
<location filename="../src/mirall/folder.cpp" line="431"/>
<source>The CSync thread terminated.</source>
<translation>Der CSync-Thread wurde beendet.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="661"/>
<location filename="../src/mirall/folder.cpp" line="675"/>
<source>This sync would remove all the files in the local sync folder '%1'.
If you or your administrator have reset your account on the server, choose &quot;Keep files&quot;. If you want your data to be removed, choose &quot;Remove all files&quot;.</source>
<translation>Dieser Synchronisationsvorgang würde alle Dateien in dem lokalen Ordner &apos;%1&apos; entfernen.
Wenn Sie oder Ihr Administrator Ihr Konto auf dem Server zurückgesetzt haben, wählen Sie &quot;Dateien behalten&quot;. Wenn Sie ihre Daten löschen wollen, wählen Sie &quot;Alle Dateien entfernen&quot;.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="664"/>
<location filename="../src/mirall/folder.cpp" line="678"/>
<source>This sync would remove all the files in the sync folder '%1'.
This might be because the folder was silently reconfigured, or that all the file were manually removed.
Are you sure you want to perform this operation?</source>
@@ -626,17 +626,17 @@ Vielleicht wurde der Ordner neu konfiguriert, oder alle Dateien wurden händisch
Sind Sie sicher, dass sie diese Operation durchführen wollen?</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="668"/>
<location filename="../src/mirall/folder.cpp" line="682"/>
<source>Remove All Files?</source>
<translation>Alle Dateien löschen?</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="670"/>
<location filename="../src/mirall/folder.cpp" line="684"/>
<source>Remove all files</source>
<translation>Lösche alle Dateien</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="671"/>
<location filename="../src/mirall/folder.cpp" line="685"/>
<source>Keep files</source>
<translation>Dateien behalten</translation>
</message>
@@ -644,57 +644,57 @@ Sind Sie sicher, dass sie diese Operation durchführen wollen?</translation>
<context>
<name>Mirall::FolderMan</name>
<message>
<location filename="../src/mirall/folderman.cpp" line="133"/>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<source>Could not reset folder state</source>
<translation>Konnte Ordner-Zustand nicht zurücksetzen</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<location filename="../src/mirall/folderman.cpp" line="135"/>
<source>An old sync journal &apos;%1&apos; was found, but could not be removed. Please make sure that no application is currently using it.</source>
<translation>Ein altes Synchronisations-Journal &apos;%1&apos; wurde gefunden, konnte jedoch nicht entfernt werden. Bitte stellen Sie sicher, dass keine Anwendung es verwendet.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="566"/>
<location filename="../src/mirall/folderman.cpp" line="567"/>
<source>Undefined State.</source>
<translation>Undefinierter Zustand.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="569"/>
<location filename="../src/mirall/folderman.cpp" line="570"/>
<source>Waits to start syncing.</source>
<translation>Wartet auf Beginn der Synchronistation</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="572"/>
<location filename="../src/mirall/folderman.cpp" line="573"/>
<source>Preparing for sync.</source>
<translation>Synchronisation wird vorbereitet.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="575"/>
<location filename="../src/mirall/folderman.cpp" line="576"/>
<source>Sync is running.</source>
<translation>Synchronisation läuft.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="578"/>
<location filename="../src/mirall/folderman.cpp" line="579"/>
<source>Server is currently not available.</source>
<translation>Der Server ist momentan nicht erreichbar.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="581"/>
<location filename="../src/mirall/folderman.cpp" line="582"/>
<source>Last Sync was successful.</source>
<translation>Die letzte Synchronisation war erfolgreich.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="586"/>
<location filename="../src/mirall/folderman.cpp" line="587"/>
<source>Last Sync was successful, but with warnings on individual files.</source>
<translation>Letzte Synchronisation war erfolgreich, aber mit Warnungen für einzelne Dateien.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="589"/>
<location filename="../src/mirall/folderman.cpp" line="590"/>
<source>Setup Error.</source>
<translation>Setup-Fehler.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="595"/>
<location filename="../src/mirall/folderman.cpp" line="596"/>
<source>%1 (Sync is paused)</source>
<translation>%1 (Synchronisation ist pausiert)</translation>
</message>
@@ -721,7 +721,7 @@ Sind Sie sicher, dass sie diese Operation durchführen wollen?</translation>
<context>
<name>Mirall::FolderWatcherPrivate</name>
<message>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="54"/>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="53"/>
<source>Could not monitor directories due to system limitations.
The application will not work reliably. Please check the
documentation for possible fixes.</source>
@@ -922,17 +922,17 @@ Aktivierte Elemente werden ebenfalls gelöscht, wenn diese das Löschen eines Ve
<translation>Detailliertes Synchronisationsprotokoll</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="60"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="57"/>
<source>3</source>
<translation>3</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="65"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="62"/>
<source>4</source>
<translation>4</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="73"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="70"/>
<source>TextLabel</source>
<translation>Textfeld</translation>
</message>
@@ -973,56 +973,71 @@ Aktivierte Elemente werden ebenfalls gelöscht, wenn diese das Löschen eines Ve
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="120"/>
<source>File ignored.</source>
<translation>Datei ignoriert.</translation>
<source>Soft Link ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="121"/>
<source>The file was ignored because it is listed in the clients ignore list
or the filename contains characters that are not syncable
in a cross platform environment.</source>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="125"/>
<source>Directory ignored.</source>
<translation>Verzeichnis ignoriert.</translation>
<location filename="../src/mirall/itemprogressdialog.cpp" line="124"/>
<source>file</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="126"/>
<source>The directory was ignored because it is listed in the clients
ignore list or the directory name contains
characters that are not syncable in a cross platform environment.</source>
<source>directory</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="130"/>
<source>Soft Link ignored.</source>
<translation>Symbolische Verknüpfung ignoriert</translation>
<location filename="../src/mirall/itemprogressdialog.cpp" line="128"/>
<source>The %1 was ignored because it is listed in the clients ignore list
or the %1 name contains characters that are not syncable
in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="131"/>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories.</source>
<source>Item ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="133"/>
<source>%1 on ignore list</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="134"/>
<source>Ignored.</source>
<translation>Ignoriert.</translation>
<source>The %1 was skipped because it is listed on the clients
list of names to ignore</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="137"/>
<source>Conflict file.</source>
<source>Invalid characters</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="138"/>
<source>The %1 name contains one or more invalid characters which break
syncing in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="143"/>
<source>Conflict file.</source>
<translation>Konfliktdatei.</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="144"/>
<source>The file was changed on server and local repository and as a result it
created a so called conflict. The local change is copied to the conflict
file while the file from the server side is available under the original
name</source>
<translation type="unfinished"/>
<translation>Die Datei wurde sowohl auf dem Server als auch im lokalen Repository geändert und verursacht somit einen Konflikt. Die lokalen Änderungen wurden in die Konflikt-Datei kopiert während die Änderungen vom Server in der Datei mit dem Original-Namen zu finden sind.</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="231"/>
@@ -1083,23 +1098,23 @@ name</source>
<translation>Speichere die Protokolldatei zur Fehleranalyse</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="162"/>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="164"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Error</source>
<translation>Fehler</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="163"/>
<location filename="../src/mirall/logbrowser.cpp" line="165"/>
<source>&lt;nobr&gt;File &apos;%1&apos;&lt;br/&gt;cannot be opened for writing.&lt;br/&gt;&lt;br/&gt;The log output can &lt;b&gt;not&lt;/b&gt; be saved!&lt;/nobr&gt;</source>
<translation>&lt;nobr&gt;Datei &apos;%1&apos;&lt;br/&gt;kann nicht zum Schreiben geöffnet werden.&lt;br/&gt;&lt;br/&gt;Die Protokolldatei kann &lt;b&gt;nicht&lt;/b&gt; gespeichert werden!&lt;/nobr&gt;</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="208"/>
<location filename="../src/mirall/logbrowser.cpp" line="210"/>
<source>Save log file</source>
<translation>Log-Datei speichern</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Could not write to log file </source>
<translation>Log-Datei konnte nicht geschrieben werden</translation>
</message>
@@ -1153,29 +1168,29 @@ name</source>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="188"/>
<location filename="../src/mirall/networksettings.ui" line="281"/>
<location filename="../src/mirall/networksettings.ui" line="287"/>
<source>Limit to</source>
<translation>Begrenzen auf</translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="210"/>
<location filename="../src/mirall/networksettings.ui" line="306"/>
<location filename="../src/mirall/networksettings.ui" line="312"/>
<source>KBytes/s</source>
<translation>KBytes/s</translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="232"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>No Limit</source>
<location filename="../src/mirall/networksettings.ui" line="270"/>
<source>No limit</source>
<translation>Keine Begrenzung</translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="258"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>Upload Bandwidth</source>
<translation>Upload-Bandbreite</translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="271"/>
<location filename="../src/mirall/networksettings.ui" line="277"/>
<source>Limit automatically</source>
<translation>Automatisch begrenzen</translation>
</message>
@@ -1220,7 +1235,7 @@ name</source>
<message>
<location filename="../src/wizard/owncloudadvancedsetuppage.cpp" line="57"/>
<source>Connect...</source>
<translation type="unfinished"/>
<translation>Verbinde...</translation>
</message>
<message>
<location filename="../src/wizard/owncloudadvancedsetuppage.cpp" line="107"/>
@@ -1921,6 +1936,34 @@ name</source>
<translation>SSL-Verbindung</translation>
</message>
</context>
<context>
<name>Utility</name>
<message>
<location filename="../src/mirall/utility.cpp" line="114"/>
<source>%L1 TB</source>
<translation>%L1 TB</translation>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="117"/>
<source>%L1 GB</source>
<translation>%L1 GB</translation>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="120"/>
<source>%L1 MB</source>
<translation>%L1 MB</translation>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="123"/>
<source>%L1 kB</source>
<translation>%L1 kB</translation>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="126"/>
<source>%L1 B</source>
<translation>%L1 B</translation>
</message>
</context>
<context>
<name>main.cpp</name>
<message>
@@ -1937,7 +1980,7 @@ name</source>
<context>
<name>ownCloudTheme</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="99"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="90"/>
<source>If you don&apos;t have an ownCloud server yet, see &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt; for more info.</source>
<comment>Top text in setup wizard. Keep short!</comment>
<translation>Wenn Sie noch keinen ownCloud-Server haben, informieren Sie sich unter &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt;.</translation>
@@ -1946,12 +1989,12 @@ name</source>
<context>
<name>ownCloudTheme::about()</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="57"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="48"/>
<source>&lt;p&gt;&lt;small&gt;Built from Git revision &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt; on %3, %4 using OCsync %5 and Qt %6.&lt;/small&gt;&lt;p&gt;</source>
<translation>&lt;p&gt;&lt;small&gt;Erstellt aus Git revision &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt; vom %3, %4 mit OCsync %5 und Qt %6.&lt;/small&gt;&lt;p&gt;</translation>
</message>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="65"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="56"/>
<source>&lt;p&gt;Version %2. For more information visit &lt;a href=&quot;%3&quot;&gt;%4&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;small&gt;By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.&lt;br&gt;Based on Mirall by Duncan Mac-Vicar P.&lt;/small&gt;&lt;/p&gt;%7</source>
<translation>&lt;p&gt;Version %2. Für mehr Informationen besuchen Sie &lt;a href=&quot;%3&quot;&gt;%4&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;small&gt; Von Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc., &lt;br&gt; Basierend auf Mirall von Duncan Mac-Vicar P.&lt;/small&gt;&lt;/p&gt;%7</translation>
</message>
@@ -1962,79 +2005,79 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="31"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="43"/>
<source>Download</source>
<translation type="unfinished"/>
<translation>Herunterladen</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="34"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="47"/>
<source>Upload</source>
<translation type="unfinished"/>
<translation>Hochladen</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="37"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="80"/>
<source>Context</source>
<translation type="unfinished"/>
<translation>Kontext</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="40"/>
<source>Inactive</source>
<translation type="unfinished"/>
<translation>Inaktiv</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="50"/>
<source>Start</source>
<translation type="unfinished"/>
<translation>Start</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="53"/>
<source>Finished</source>
<translation type="unfinished"/>
<translation>Abgeschlossen</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="56"/>
<source>For deletion</source>
<translation type="unfinished"/>
<translation>Zu löschen</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="59"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="107"/>
<source>deleted</source>
<translation type="unfinished"/>
<translation>gelöscht</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="74"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="86"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="92"/>
<source>downloading</source>
<translation type="unfinished"/>
<translation>Herunterladen</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="77"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="89"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="95"/>
<source>uploading</source>
<translation type="unfinished"/>
<translation>Lade hoch</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="83"/>
<source>inactive</source>
<translation type="unfinished"/>
<translation>Inaktiv</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="98"/>
<source>starting</source>
<translation type="unfinished"/>
<translation>Starte</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="101"/>
<source>finished</source>
<translation type="unfinished"/>
<translation>abgeschlossen</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="104"/>
<source>delete</source>
<translation type="unfinished"/>
<translation>löschen</translation>
</message>
</context>
<context>
@@ -2042,47 +2085,47 @@ name</source>
<message>
<location filename="../src/mirall/theme.cpp" line="48"/>
<source>Status undefined</source>
<translation type="unfinished"/>
<translation>Status undefiniert</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="51"/>
<source>Waiting to start sync</source>
<translation type="unfinished"/>
<translation>Warte, um mit der Synchronistation zu beginnen</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="54"/>
<source>Sync is running</source>
<translation type="unfinished"/>
<translation>Sync läuft</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="57"/>
<source>Sync Success</source>
<translation type="unfinished"/>
<translation>Sync erfolgreich</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="60"/>
<source>Sync Success, problems with individual files.</source>
<translation type="unfinished"/>
<translation>Synchronisierung abgeschlossen, Probleme mit einzelnen Dateien.</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="63"/>
<source>Sync Error - Click info button for details.</source>
<translation type="unfinished"/>
<translation>Sync-Fehler - Klicken Sie auf den Info-Knopf für weitere Informationen</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="66"/>
<source>Setup Error</source>
<translation type="unfinished"/>
<translation>Setup-Fehler</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="69"/>
<source>The server is currently unavailable</source>
<translation type="unfinished"/>
<translation>Der Server ist vorübergehend nicht erreichbar.</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="72"/>
<source>Preparing to sync</source>
<translation type="unfinished"/>
<translation>Synchronisation wird vorbereitet</translation>
</message>
</context>
</TS>
+149 -106
Ver Arquivo
@@ -227,112 +227,112 @@
<context>
<name>Mirall::Application</name>
<message>
<location filename="../src/mirall/application.cpp" line="246"/>
<location filename="../src/mirall/application.cpp" line="252"/>
<source>%1 Sync Started</source>
<translation>%1 Ο συγχρονισμος ξεκινησε</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/application.cpp" line="247"/>
<location filename="../src/mirall/application.cpp" line="253"/>
<source>Sync started for %n configured sync folder(s).</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="319"/>
<location filename="../src/mirall/application.cpp" line="325"/>
<source>Open %1 in browser</source>
<translation>Άνοιγμα %1 στον περιηγητή</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="321"/>
<location filename="../src/mirall/application.cpp" line="327"/>
<source>Calculating quota...</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="323"/>
<location filename="../src/mirall/application.cpp" line="329"/>
<source>Unknown status</source>
<translation>Άγνωστη κατάσταση</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="325"/>
<location filename="../src/mirall/application.cpp" line="331"/>
<source>Settings...</source>
<translation>Ρυθμίσεις...</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="326"/>
<location filename="../src/mirall/application.cpp" line="332"/>
<source>Details...</source>
<translation>Λεπτομέρειες...</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="331"/>
<location filename="../src/mirall/application.cpp" line="337"/>
<source>Help</source>
<translation>Βοήθεια</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="333"/>
<location filename="../src/mirall/application.cpp" line="339"/>
<source>Quit %1</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="383"/>
<location filename="../src/mirall/application.cpp" line="389"/>
<source>Open %1 folder</source>
<translation>Άνοιγμα %1 φακέλου</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="526"/>
<location filename="../src/mirall/application.cpp" line="537"/>
<source>%1% of %2 in use</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="598"/>
<location filename="../src/mirall/application.cpp" line="609"/>
<source>Up to date</source>
<translation>Ενημερωμένο</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="362"/>
<location filename="../src/mirall/application.cpp" line="368"/>
<source>None.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="366"/>
<location filename="../src/mirall/application.cpp" line="372"/>
<source>Recent Changes</source>
<translation>Πρόσφατες Αλλαγές</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="393"/>
<location filename="../src/mirall/application.cpp" line="399"/>
<source>Managed Folders:</source>
<translation>Διαχείριση αρχείων:</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="396"/>
<location filename="../src/mirall/application.cpp" line="402"/>
<source>Open folder &apos;%1&apos;</source>
<translation>Άνοιγμα καταλόγου &apos;%1&apos;</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="519"/>
<location filename="../src/mirall/application.cpp" line="530"/>
<source>Quota n/a</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="552"/>
<location filename="../src/mirall/application.cpp" line="563"/>
<source>No items synced recently</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="561"/>
<location filename="../src/mirall/application.cpp" line="572"/>
<source>%1 (%2, %3)</source>
<translation>%1 (%2, %3)</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="576"/>
<location filename="../src/mirall/application.cpp" line="587"/>
<source>Syncing %1 of %2 (%3 of %4) </source>
<translation>Συγχρονισμός %1 από %2 (%3 από %4) </translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="814"/>
<location filename="../src/mirall/application.cpp" line="825"/>
<source>Folder %1: %2</source>
<translation>Φάκελος %1: %2</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="820"/>
<location filename="../src/mirall/application.cpp" line="831"/>
<source>No sync folders configured.</source>
<translation>Δεν έχουν οριστεί φάκελοι συγχρονισμού.</translation>
</message>
@@ -456,28 +456,28 @@
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="143"/>
<source>CSync failed due to not handled permission deniend.</source>
<translation>CSync απέτυχε λόγω μη γίνεται deniend άδεια. </translation>
<source>CSync: Permission deniend.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="146"/>
<source>CSync failed to find a specific file.</source>
<translation>Το CSync απέτυχε να βρει ένα συγκεκριμένο αρχείο. </translation>
<source>CSync: File not found.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="149"/>
<source>CSync tried to create a directory that already exists.</source>
<translation>Το CSync προσπαθησε να δημιουργησει εναν χωρο αποθηκευσης που υπηρχε ηδη.</translation>
<source>CSync: Directory already exists.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="152"/>
<source>CSync: No space on %1 server available.</source>
<translation>CSync: Δεν υπαρχει διαθεσιμος χωρος στον %1 διακομιστη.</translation>
<source>CSync: No space left on %1 server.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="155"/>
<source>CSync unspecified error.</source>
<translation>CSync αγνωστο σφαλμα.</translation>
<source>CSync: unspecified error.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="158"/>
@@ -539,100 +539,100 @@
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>New file available</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>&apos;%1&apos; has been synced to this machine.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>New files available</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>&apos;%1&apos; and %n other file(s) have been synced to this machine.</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>File removed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>&apos;%1&apos; has been removed.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>Files removed</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>&apos;%1&apos; and %n other file(s) have been removed.</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>File updated</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>&apos;%1&apos; has been updated.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>Files updated</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>&apos;%1&apos; and %n other file(s) have been updated.</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="392"/>
<location filename="../src/mirall/folder.cpp" line="402"/>
<source>Error</source>
<translation>Σφάλμα</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="421"/>
<location filename="../src/mirall/folder.cpp" line="431"/>
<source>The CSync thread terminated.</source>
<translation>Η διεργασία CSync τερματίζεται.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="661"/>
<location filename="../src/mirall/folder.cpp" line="675"/>
<source>This sync would remove all the files in the local sync folder '%1'.
If you or your administrator have reset your account on the server, choose &quot;Keep files&quot;. If you want your data to be removed, choose &quot;Remove all files&quot;.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="664"/>
<location filename="../src/mirall/folder.cpp" line="678"/>
<source>This sync would remove all the files in the sync folder '%1'.
This might be because the folder was silently reconfigured, or that all the file were manually removed.
Are you sure you want to perform this operation?</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="668"/>
<location filename="../src/mirall/folder.cpp" line="682"/>
<source>Remove All Files?</source>
<translation>Αφαίρεση Όλων των Αρχείων;</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="670"/>
<location filename="../src/mirall/folder.cpp" line="684"/>
<source>Remove all files</source>
<translation>Αφαίρεση όλων των αρχείων</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="671"/>
<location filename="../src/mirall/folder.cpp" line="685"/>
<source>Keep files</source>
<translation>Διατήρηση αρχείων</translation>
</message>
@@ -640,57 +640,57 @@ Are you sure you want to perform this operation?</source>
<context>
<name>Mirall::FolderMan</name>
<message>
<location filename="../src/mirall/folderman.cpp" line="133"/>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<source>Could not reset folder state</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<location filename="../src/mirall/folderman.cpp" line="135"/>
<source>An old sync journal &apos;%1&apos; was found, but could not be removed. Please make sure that no application is currently using it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="566"/>
<location filename="../src/mirall/folderman.cpp" line="567"/>
<source>Undefined State.</source>
<translation>Απροσδιόριστη κατάσταση.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="569"/>
<location filename="../src/mirall/folderman.cpp" line="570"/>
<source>Waits to start syncing.</source>
<translation>Αναμονή έναρξης συγχρονισμού.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="572"/>
<location filename="../src/mirall/folderman.cpp" line="573"/>
<source>Preparing for sync.</source>
<translation>Προετοιμασία για συγχρονισμό.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="575"/>
<location filename="../src/mirall/folderman.cpp" line="576"/>
<source>Sync is running.</source>
<translation>Ο συγχρονισμός εκτελείται.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="578"/>
<location filename="../src/mirall/folderman.cpp" line="579"/>
<source>Server is currently not available.</source>
<translation>Ο διακομιστής δεν είναι διαθέσιμος προς το παρόν.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="581"/>
<location filename="../src/mirall/folderman.cpp" line="582"/>
<source>Last Sync was successful.</source>
<translation>Ο τελευταίος συγχρονισμός ήταν επιτυχής.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="586"/>
<location filename="../src/mirall/folderman.cpp" line="587"/>
<source>Last Sync was successful, but with warnings on individual files.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="589"/>
<location filename="../src/mirall/folderman.cpp" line="590"/>
<source>Setup Error.</source>
<translation>Σφάλμα Ρύθμισης.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="595"/>
<location filename="../src/mirall/folderman.cpp" line="596"/>
<source>%1 (Sync is paused)</source>
<translation type="unfinished"/>
</message>
@@ -717,7 +717,7 @@ Are you sure you want to perform this operation?</source>
<context>
<name>Mirall::FolderWatcherPrivate</name>
<message>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="54"/>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="53"/>
<source>Could not monitor directories due to system limitations.
The application will not work reliably. Please check the
documentation for possible fixes.</source>
@@ -914,17 +914,17 @@ Checked items will also be deleted if they prevent a directory from being remove
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="60"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="57"/>
<source>3</source>
<translation>3</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="65"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="62"/>
<source>4</source>
<translation>4</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="73"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="70"/>
<source>TextLabel</source>
<translation>TextLabel</translation>
</message>
@@ -965,51 +965,66 @@ Checked items will also be deleted if they prevent a directory from being remove
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="120"/>
<source>File ignored.</source>
<source>Soft Link ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="121"/>
<source>The file was ignored because it is listed in the clients ignore list
or the filename contains characters that are not syncable
in a cross platform environment.</source>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="125"/>
<source>Directory ignored.</source>
<location filename="../src/mirall/itemprogressdialog.cpp" line="124"/>
<source>file</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="126"/>
<source>The directory was ignored because it is listed in the clients
ignore list or the directory name contains
characters that are not syncable in a cross platform environment.</source>
<source>directory</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="130"/>
<source>Soft Link ignored.</source>
<location filename="../src/mirall/itemprogressdialog.cpp" line="128"/>
<source>The %1 was ignored because it is listed in the clients ignore list
or the %1 name contains characters that are not syncable
in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="131"/>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories.</source>
<source>Item ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="133"/>
<source>%1 on ignore list</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="134"/>
<source>Ignored.</source>
<source>The %1 was skipped because it is listed on the clients
list of names to ignore</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="137"/>
<source>Conflict file.</source>
<source>Invalid characters</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="138"/>
<source>The %1 name contains one or more invalid characters which break
syncing in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="143"/>
<source>Conflict file.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="144"/>
<source>The file was changed on server and local repository and as a result it
created a so called conflict. The local change is copied to the conflict
file while the file from the server side is available under the original
@@ -1075,23 +1090,23 @@ name</source>
<translation>Αποθήκευση του αρχείου καταγραφών στον δίσκο, για αποσφαλμάτωση. </translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="162"/>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="164"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Error</source>
<translation>Σφάλμα</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="163"/>
<location filename="../src/mirall/logbrowser.cpp" line="165"/>
<source>&lt;nobr&gt;File &apos;%1&apos;&lt;br/&gt;cannot be opened for writing.&lt;br/&gt;&lt;br/&gt;The log output can &lt;b&gt;not&lt;/b&gt; be saved!&lt;/nobr&gt;</source>
<translation>&lt;nobr&gt;Το αρχειο &apos;%1&apos;&lt;br/&gt;δεν μπορει να ανοιχθει για το γραψιμο.&lt;br/&gt;&lt;br/&gt;Το αρχείο καταγραφής δεν &lt;b&gt;μπορεί&lt;/b&gt; να αποθηκευτεί!&lt;/nobr&gt; </translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="208"/>
<location filename="../src/mirall/logbrowser.cpp" line="210"/>
<source>Save log file</source>
<translation>Αποθήκευση αρχείου συμβάντων</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Could not write to log file </source>
<translation>Δεν ήταν δυνατή η εγγραφή στο αρχείο συμβάντων</translation>
</message>
@@ -1145,29 +1160,29 @@ name</source>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="188"/>
<location filename="../src/mirall/networksettings.ui" line="281"/>
<location filename="../src/mirall/networksettings.ui" line="287"/>
<source>Limit to</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="210"/>
<location filename="../src/mirall/networksettings.ui" line="306"/>
<location filename="../src/mirall/networksettings.ui" line="312"/>
<source>KBytes/s</source>
<translation>KBytes/s</translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="232"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>No Limit</source>
<translation>Χωρίς Όριο</translation>
<location filename="../src/mirall/networksettings.ui" line="270"/>
<source>No limit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="258"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>Upload Bandwidth</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="271"/>
<location filename="../src/mirall/networksettings.ui" line="277"/>
<source>Limit automatically</source>
<translation type="unfinished"/>
</message>
@@ -1913,6 +1928,34 @@ name</source>
<translation>Σύνδεση SSL</translation>
</message>
</context>
<context>
<name>Utility</name>
<message>
<location filename="../src/mirall/utility.cpp" line="114"/>
<source>%L1 TB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="117"/>
<source>%L1 GB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="120"/>
<source>%L1 MB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="123"/>
<source>%L1 kB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="126"/>
<source>%L1 B</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>main.cpp</name>
<message>
@@ -1929,7 +1972,7 @@ name</source>
<context>
<name>ownCloudTheme</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="99"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="90"/>
<source>If you don&apos;t have an ownCloud server yet, see &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt; for more info.</source>
<comment>Top text in setup wizard. Keep short!</comment>
<translation>Εάν δεν έχετε ένα διακομιστή ownCloud, δείτε στην διεύθυνση &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt; για περισσότερες πληροφορίες.</translation>
@@ -1938,12 +1981,12 @@ name</source>
<context>
<name>ownCloudTheme::about()</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="57"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="48"/>
<source>&lt;p&gt;&lt;small&gt;Built from Git revision &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt; on %3, %4 using OCsync %5 and Qt %6.&lt;/small&gt;&lt;p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="65"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="56"/>
<source>&lt;p&gt;Version %2. For more information visit &lt;a href=&quot;%3&quot;&gt;%4&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;small&gt;By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.&lt;br&gt;Based on Mirall by Duncan Mac-Vicar P.&lt;/small&gt;&lt;/p&gt;%7</source>
<translation type="unfinished"/>
</message>
@@ -1954,13 +1997,13 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="31"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="43"/>
<source>Download</source>
<translation type="unfinished"/>
<translation>Λήψη</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="34"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="47"/>
<source>Upload</source>
<translation type="unfinished"/>
<translation>Μεταφόρτωση</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="37"/>
@@ -1992,7 +2035,7 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="59"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="107"/>
<source>deleted</source>
<translation type="unfinished"/>
<translation>διαγράφηκε</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="74"/>
@@ -2026,7 +2069,7 @@ name</source>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="104"/>
<source>delete</source>
<translation type="unfinished"/>
<translation>διαγραφή</translation>
</message>
</context>
<context>
@@ -2034,22 +2077,22 @@ name</source>
<message>
<location filename="../src/mirall/theme.cpp" line="48"/>
<source>Status undefined</source>
<translation type="unfinished"/>
<translation>Απροσδιόριστη κατάσταση</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="51"/>
<source>Waiting to start sync</source>
<translation type="unfinished"/>
<translation>Αναμονή έναρξης συγχρονισμού</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="54"/>
<source>Sync is running</source>
<translation type="unfinished"/>
<translation>Ο Συγχρονισμός Εκτελείται</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="57"/>
<source>Sync Success</source>
<translation type="unfinished"/>
<translation>Επιτυχημένος Συγχρονισμός</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="60"/>
@@ -2059,12 +2102,12 @@ name</source>
<message>
<location filename="../src/mirall/theme.cpp" line="63"/>
<source>Sync Error - Click info button for details.</source>
<translation type="unfinished"/>
<translation>Σφάλμα στην ενημέρωση - Κάντε click για λεπτομέρειες. </translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="66"/>
<source>Setup Error</source>
<translation type="unfinished"/>
<translation>Σφάλμα Ρυθμίσεων</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="69"/>
+133 -90
Ver Arquivo
@@ -229,12 +229,12 @@
<context>
<name>Mirall::Application</name>
<message>
<location filename="../src/mirall/application.cpp" line="246"/>
<location filename="../src/mirall/application.cpp" line="252"/>
<source>%1 Sync Started</source>
<translation type="unfinished"></translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/application.cpp" line="247"/>
<location filename="../src/mirall/application.cpp" line="253"/>
<source>Sync started for %n configured sync folder(s).</source>
<translation type="unfinished">
<numerusform></numerusform>
@@ -242,102 +242,102 @@
</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="319"/>
<location filename="../src/mirall/application.cpp" line="325"/>
<source>Open %1 in browser</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="321"/>
<location filename="../src/mirall/application.cpp" line="327"/>
<source>Calculating quota...</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="323"/>
<location filename="../src/mirall/application.cpp" line="329"/>
<source>Unknown status</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="325"/>
<location filename="../src/mirall/application.cpp" line="331"/>
<source>Settings...</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="326"/>
<location filename="../src/mirall/application.cpp" line="332"/>
<source>Details...</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="331"/>
<location filename="../src/mirall/application.cpp" line="337"/>
<source>Help</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="333"/>
<location filename="../src/mirall/application.cpp" line="339"/>
<source>Quit %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="383"/>
<location filename="../src/mirall/application.cpp" line="389"/>
<source>Open %1 folder</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="526"/>
<location filename="../src/mirall/application.cpp" line="537"/>
<source>%1% of %2 in use</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="598"/>
<location filename="../src/mirall/application.cpp" line="609"/>
<source>Up to date</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="362"/>
<location filename="../src/mirall/application.cpp" line="368"/>
<source>None.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="366"/>
<location filename="../src/mirall/application.cpp" line="372"/>
<source>Recent Changes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="393"/>
<location filename="../src/mirall/application.cpp" line="399"/>
<source>Managed Folders:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="396"/>
<location filename="../src/mirall/application.cpp" line="402"/>
<source>Open folder &apos;%1&apos;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="519"/>
<location filename="../src/mirall/application.cpp" line="530"/>
<source>Quota n/a</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="552"/>
<location filename="../src/mirall/application.cpp" line="563"/>
<source>No items synced recently</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="561"/>
<location filename="../src/mirall/application.cpp" line="572"/>
<source>%1 (%2, %3)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="576"/>
<location filename="../src/mirall/application.cpp" line="587"/>
<source>Syncing %1 of %2 (%3 of %4) </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="814"/>
<location filename="../src/mirall/application.cpp" line="825"/>
<source>Folder %1: %2</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="820"/>
<location filename="../src/mirall/application.cpp" line="831"/>
<source>No sync folders configured.</source>
<translation type="unfinished"></translation>
</message>
@@ -461,27 +461,27 @@
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="143"/>
<source>CSync failed due to not handled permission deniend.</source>
<source>CSync: Permission deniend.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="146"/>
<source>CSync failed to find a specific file.</source>
<source>CSync: File not found.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="149"/>
<source>CSync tried to create a directory that already exists.</source>
<source>CSync: Directory already exists.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="152"/>
<source>CSync: No space on %1 server available.</source>
<source>CSync: No space left on %1 server.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="155"/>
<source>CSync unspecified error.</source>
<source>CSync: unspecified error.</source>
<translation type="unfinished"></translation>
</message>
<message>
@@ -544,22 +544,22 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>New file available</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>&apos;%1&apos; has been synced to this machine.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>New files available</source>
<translation type="unfinished"></translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>&apos;%1&apos; and %n other file(s) have been synced to this machine.</source>
<translation type="unfinished">
<numerusform></numerusform>
@@ -567,22 +567,22 @@
</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>File removed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>&apos;%1&apos; has been removed.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>Files removed</source>
<translation type="unfinished"></translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>&apos;%1&apos; and %n other file(s) have been removed.</source>
<translation type="unfinished">
<numerusform></numerusform>
@@ -590,22 +590,22 @@
</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>File updated</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>&apos;%1&apos; has been updated.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>Files updated</source>
<translation type="unfinished"></translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>&apos;%1&apos; and %n other file(s) have been updated.</source>
<translation type="unfinished">
<numerusform></numerusform>
@@ -613,40 +613,40 @@
</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="392"/>
<location filename="../src/mirall/folder.cpp" line="402"/>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="421"/>
<location filename="../src/mirall/folder.cpp" line="431"/>
<source>The CSync thread terminated.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="661"/>
<location filename="../src/mirall/folder.cpp" line="675"/>
<source>This sync would remove all the files in the local sync folder &apos;%1&apos;.
If you or your administrator have reset your account on the server, choose &quot;Keep files&quot;. If you want your data to be removed, choose &quot;Remove all files&quot;.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="664"/>
<location filename="../src/mirall/folder.cpp" line="678"/>
<source>This sync would remove all the files in the sync folder &apos;%1&apos;.
This might be because the folder was silently reconfigured, or that all the file were manually removed.
Are you sure you want to perform this operation?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="668"/>
<location filename="../src/mirall/folder.cpp" line="682"/>
<source>Remove All Files?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="670"/>
<location filename="../src/mirall/folder.cpp" line="684"/>
<source>Remove all files</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="671"/>
<location filename="../src/mirall/folder.cpp" line="685"/>
<source>Keep files</source>
<translation type="unfinished"></translation>
</message>
@@ -654,57 +654,57 @@ Are you sure you want to perform this operation?</source>
<context>
<name>Mirall::FolderMan</name>
<message>
<location filename="../src/mirall/folderman.cpp" line="133"/>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<source>Could not reset folder state</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<location filename="../src/mirall/folderman.cpp" line="135"/>
<source>An old sync journal &apos;%1&apos; was found, but could not be removed. Please make sure that no application is currently using it.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="566"/>
<location filename="../src/mirall/folderman.cpp" line="567"/>
<source>Undefined State.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="569"/>
<location filename="../src/mirall/folderman.cpp" line="570"/>
<source>Waits to start syncing.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="572"/>
<location filename="../src/mirall/folderman.cpp" line="573"/>
<source>Preparing for sync.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="575"/>
<location filename="../src/mirall/folderman.cpp" line="576"/>
<source>Sync is running.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="578"/>
<location filename="../src/mirall/folderman.cpp" line="579"/>
<source>Server is currently not available.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="581"/>
<location filename="../src/mirall/folderman.cpp" line="582"/>
<source>Last Sync was successful.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="586"/>
<location filename="../src/mirall/folderman.cpp" line="587"/>
<source>Last Sync was successful, but with warnings on individual files.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="589"/>
<location filename="../src/mirall/folderman.cpp" line="590"/>
<source>Setup Error.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="595"/>
<location filename="../src/mirall/folderman.cpp" line="596"/>
<source>%1 (Sync is paused)</source>
<translation type="unfinished"></translation>
</message>
@@ -731,7 +731,7 @@ Are you sure you want to perform this operation?</source>
<context>
<name>Mirall::FolderWatcherPrivate</name>
<message>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="54"/>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="53"/>
<source>Could not monitor directories due to system limitations.
The application will not work reliably. Please check the
documentation for possible fixes.</source>
@@ -928,17 +928,17 @@ Checked items will also be deleted if they prevent a directory from being remove
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="60"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="57"/>
<source>3</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="65"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="62"/>
<source>4</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="73"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="70"/>
<source>TextLabel</source>
<translation type="unfinished"></translation>
</message>
@@ -979,51 +979,66 @@ Checked items will also be deleted if they prevent a directory from being remove
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="120"/>
<source>File ignored.</source>
<source>Soft Link ignored</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="121"/>
<source>The file was ignored because it is listed in the clients ignore list
or the filename contains characters that are not syncable
in a cross platform environment.</source>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="125"/>
<source>Directory ignored.</source>
<location filename="../src/mirall/itemprogressdialog.cpp" line="124"/>
<source>file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="126"/>
<source>The directory was ignored because it is listed in the clients
ignore list or the directory name contains
characters that are not syncable in a cross platform environment.</source>
<source>directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="130"/>
<source>Soft Link ignored.</source>
<location filename="../src/mirall/itemprogressdialog.cpp" line="128"/>
<source>The %1 was ignored because it is listed in the clients ignore list
or the %1 name contains characters that are not syncable
in a cross platform environment</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="131"/>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories.</source>
<source>Item ignored</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="133"/>
<source>%1 on ignore list</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="134"/>
<source>Ignored.</source>
<source>The %1 was skipped because it is listed on the clients
list of names to ignore</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="137"/>
<source>Conflict file.</source>
<source>Invalid characters</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="138"/>
<source>The %1 name contains one or more invalid characters which break
syncing in a cross platform environment</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="143"/>
<source>Conflict file.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="144"/>
<source>The file was changed on server and local repository and as a result it
created a so called conflict. The local change is copied to the conflict
file while the file from the server side is available under the original
@@ -1089,23 +1104,23 @@ name</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="162"/>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="164"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="163"/>
<location filename="../src/mirall/logbrowser.cpp" line="165"/>
<source>&lt;nobr&gt;File &apos;%1&apos;&lt;br/&gt;cannot be opened for writing.&lt;br/&gt;&lt;br/&gt;The log output can &lt;b&gt;not&lt;/b&gt; be saved!&lt;/nobr&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="208"/>
<location filename="../src/mirall/logbrowser.cpp" line="210"/>
<source>Save log file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Could not write to log file </source>
<translation type="unfinished"></translation>
</message>
@@ -1159,29 +1174,29 @@ name</source>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="188"/>
<location filename="../src/mirall/networksettings.ui" line="281"/>
<location filename="../src/mirall/networksettings.ui" line="287"/>
<source>Limit to</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="210"/>
<location filename="../src/mirall/networksettings.ui" line="306"/>
<location filename="../src/mirall/networksettings.ui" line="312"/>
<source>KBytes/s</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="232"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>No Limit</source>
<location filename="../src/mirall/networksettings.ui" line="270"/>
<source>No limit</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="258"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>Upload Bandwidth</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="271"/>
<location filename="../src/mirall/networksettings.ui" line="277"/>
<source>Limit automatically</source>
<translation type="unfinished"></translation>
</message>
@@ -1927,6 +1942,34 @@ name</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Utility</name>
<message>
<location filename="../src/mirall/utility.cpp" line="114"/>
<source>%L1 TB</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="117"/>
<source>%L1 GB</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="120"/>
<source>%L1 MB</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="123"/>
<source>%L1 kB</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="126"/>
<source>%L1 B</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>main.cpp</name>
<message>
@@ -1943,7 +1986,7 @@ name</source>
<context>
<name>ownCloudTheme</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="99"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="90"/>
<source>If you don&apos;t have an ownCloud server yet, see &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt; for more info.</source>
<comment>Top text in setup wizard. Keep short!</comment>
<translation type="unfinished"></translation>
@@ -1952,12 +1995,12 @@ name</source>
<context>
<name>ownCloudTheme::about()</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="57"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="48"/>
<source>&lt;p&gt;&lt;small&gt;Built from Git revision &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt; on %3, %4 using OCsync %5 and Qt %6.&lt;/small&gt;&lt;p&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="65"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="56"/>
<source>&lt;p&gt;Version %2. For more information visit &lt;a href=&quot;%3&quot;&gt;%4&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;small&gt;By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.&lt;br&gt;Based on Mirall by Duncan Mac-Vicar P.&lt;/small&gt;&lt;/p&gt;%7</source>
<translation type="unfinished"></translation>
</message>
+153 -110
Ver Arquivo
@@ -227,112 +227,112 @@
<context>
<name>Mirall::Application</name>
<message>
<location filename="../src/mirall/application.cpp" line="246"/>
<location filename="../src/mirall/application.cpp" line="252"/>
<source>%1 Sync Started</source>
<translation>Sincronización %1 iniciada</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/application.cpp" line="247"/>
<location filename="../src/mirall/application.cpp" line="253"/>
<source>Sync started for %n configured sync folder(s).</source>
<translation><numerusform>Iniciada la sincronización de %n carpeta de sincronización configurada.</numerusform><numerusform>Iniciada la sincronización de %n carpetas de sincronización configuradas.</numerusform></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="319"/>
<location filename="../src/mirall/application.cpp" line="325"/>
<source>Open %1 in browser</source>
<translation>Abrir %1 en el navegador</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="321"/>
<location filename="../src/mirall/application.cpp" line="327"/>
<source>Calculating quota...</source>
<translation>Calculando cuota...</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="323"/>
<location filename="../src/mirall/application.cpp" line="329"/>
<source>Unknown status</source>
<translation>Estado desconocido</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="325"/>
<location filename="../src/mirall/application.cpp" line="331"/>
<source>Settings...</source>
<translation>Configuraciones...</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="326"/>
<location filename="../src/mirall/application.cpp" line="332"/>
<source>Details...</source>
<translation>Detalles...</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="331"/>
<location filename="../src/mirall/application.cpp" line="337"/>
<source>Help</source>
<translation>Ayuda</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="333"/>
<location filename="../src/mirall/application.cpp" line="339"/>
<source>Quit %1</source>
<translation>Cancelar %1</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="383"/>
<location filename="../src/mirall/application.cpp" line="389"/>
<source>Open %1 folder</source>
<translation>Abrir carpeta %1</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="526"/>
<location filename="../src/mirall/application.cpp" line="537"/>
<source>%1% of %2 in use</source>
<translation>%1% de %2 en uso</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="598"/>
<location filename="../src/mirall/application.cpp" line="609"/>
<source>Up to date</source>
<translation>Actualizado</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="362"/>
<location filename="../src/mirall/application.cpp" line="368"/>
<source>None.</source>
<translation>Ninguno.</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="366"/>
<location filename="../src/mirall/application.cpp" line="372"/>
<source>Recent Changes</source>
<translation>Cambios recientes</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="393"/>
<location filename="../src/mirall/application.cpp" line="399"/>
<source>Managed Folders:</source>
<translation>Carpetas administradas:</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="396"/>
<location filename="../src/mirall/application.cpp" line="402"/>
<source>Open folder &apos;%1&apos;</source>
<translation>Abrir carpeta &apos;%1&apos;</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="519"/>
<location filename="../src/mirall/application.cpp" line="530"/>
<source>Quota n/a</source>
<translation>Cuota no disponible</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="552"/>
<location filename="../src/mirall/application.cpp" line="563"/>
<source>No items synced recently</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="561"/>
<location filename="../src/mirall/application.cpp" line="572"/>
<source>%1 (%2, %3)</source>
<translation>%1 (%2, %3)</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="576"/>
<location filename="../src/mirall/application.cpp" line="587"/>
<source>Syncing %1 of %2 (%3 of %4) </source>
<translation>Sincronizando %1 de %2 (%3 de %4) </translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="814"/>
<location filename="../src/mirall/application.cpp" line="825"/>
<source>Folder %1: %2</source>
<translation>Archivo %1: %2</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="820"/>
<location filename="../src/mirall/application.cpp" line="831"/>
<source>No sync folders configured.</source>
<translation>No hay carpetas de sincronización configuradas.</translation>
</message>
@@ -456,28 +456,28 @@
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="143"/>
<source>CSync failed due to not handled permission deniend.</source>
<translation>CSync: Falló debido a un permiso denegado.</translation>
<source>CSync: Permission deniend.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="146"/>
<source>CSync failed to find a specific file.</source>
<translation>CSync: Falló en encontrar un archivo especifico.</translation>
<source>CSync: File not found.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="149"/>
<source>CSync tried to create a directory that already exists.</source>
<translation>CSync trató de crear un directorio que ya existe.</translation>
<source>CSync: Directory already exists.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="152"/>
<source>CSync: No space on %1 server available.</source>
<translation>CSync: No queda espacio disponible en el servidor %1.</translation>
<source>CSync: No space left on %1 server.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="155"/>
<source>CSync unspecified error.</source>
<translation>Error no especificado de CSync</translation>
<source>CSync: unspecified error.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="158"/>
@@ -539,84 +539,84 @@
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>New file available</source>
<translation>Nuevo archivo disponible</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>&apos;%1&apos; has been synced to this machine.</source>
<translation>&apos;%1&apos; ha sido sincronizado con este equipo.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>New files available</source>
<translation>Nuevos archivos disponibles</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>&apos;%1&apos; and %n other file(s) have been synced to this machine.</source>
<translation><numerusform>&apos;%1&apos; y %n archivos adicionales han sido sincronizados con este equipo.</numerusform><numerusform>&apos;%1&apos; y %n archivos adicionales han sido sincronizados con este equipo.</numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>File removed</source>
<translation>Archivo eliminado</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>&apos;%1&apos; has been removed.</source>
<translation>&apos;%1&apos; ha sido eliminado.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>Files removed</source>
<translation>Archivos eliminados</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>&apos;%1&apos; and %n other file(s) have been removed.</source>
<translation><numerusform>&apos;%1&apos; y %n archivos adicionales han sido eliminados.</numerusform><numerusform>&apos;%1&apos; y %n archivos adicionales han sido eliminados.</numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>File updated</source>
<translation>Archivo actualizado</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>&apos;%1&apos; has been updated.</source>
<translation>&apos;%1&apos; ha sido actualizado.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>Files updated</source>
<translation>Archivos actualizados</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>&apos;%1&apos; and %n other file(s) have been updated.</source>
<translation><numerusform>&apos;%1&apos; y %n archivos adicionales han sido actualizados.</numerusform><numerusform>&apos;%1&apos; y %n archivos adicionales han sido actualizados.</numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="392"/>
<location filename="../src/mirall/folder.cpp" line="402"/>
<source>Error</source>
<translation>Error</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="421"/>
<location filename="../src/mirall/folder.cpp" line="431"/>
<source>The CSync thread terminated.</source>
<translation>Terminó el hilo Csync.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="661"/>
<location filename="../src/mirall/folder.cpp" line="675"/>
<source>This sync would remove all the files in the local sync folder '%1'.
If you or your administrator have reset your account on the server, choose &quot;Keep files&quot;. If you want your data to be removed, choose &quot;Remove all files&quot;.</source>
<translation>Esta sincronización eliminaría todos los archivos en la carpeta local de sincronización &apos;%1&apos;.
Si ud. o su administrador han restablecido su cuenta en el servidor, elija &quot;Conservar Archivos&quot;. Si desea eliminar toda su información, elija &quot;Eliminar todos los archivos&quot;.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="664"/>
<location filename="../src/mirall/folder.cpp" line="678"/>
<source>This sync would remove all the files in the sync folder '%1'.
This might be because the folder was silently reconfigured, or that all the file were manually removed.
Are you sure you want to perform this operation?</source>
@@ -625,17 +625,17 @@ Esto se puede deber a que la carpeta fue reconfigurada de forma silenciosa o a q
Está seguro de que desea realizar esta operación?</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="668"/>
<location filename="../src/mirall/folder.cpp" line="682"/>
<source>Remove All Files?</source>
<translation>Eliminar todos los archivos?</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="670"/>
<location filename="../src/mirall/folder.cpp" line="684"/>
<source>Remove all files</source>
<translation>Eliminar todos los archivos</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="671"/>
<location filename="../src/mirall/folder.cpp" line="685"/>
<source>Keep files</source>
<translation>Conservar archivos</translation>
</message>
@@ -643,57 +643,57 @@ Está seguro de que desea realizar esta operación?</translation>
<context>
<name>Mirall::FolderMan</name>
<message>
<location filename="../src/mirall/folderman.cpp" line="133"/>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<source>Could not reset folder state</source>
<translation>No se ha podido restablecer el estado de la carpeta</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<location filename="../src/mirall/folderman.cpp" line="135"/>
<source>An old sync journal &apos;%1&apos; was found, but could not be removed. Please make sure that no application is currently using it.</source>
<translation>Una antigua jornada sincronizada &apos;%1&apos; se ha encontrado, pero no se ha podido eliminar. Por favor asegúrese que ninguna aplicación la está utilizando.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="566"/>
<location filename="../src/mirall/folderman.cpp" line="567"/>
<source>Undefined State.</source>
<translation>Estado no definido.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="569"/>
<location filename="../src/mirall/folderman.cpp" line="570"/>
<source>Waits to start syncing.</source>
<translation>Esperando el inicio de la sincronización.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="572"/>
<location filename="../src/mirall/folderman.cpp" line="573"/>
<source>Preparing for sync.</source>
<translation>Preparándose para sincronizar.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="575"/>
<location filename="../src/mirall/folderman.cpp" line="576"/>
<source>Sync is running.</source>
<translation>Sincronización en funcionamiento.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="578"/>
<location filename="../src/mirall/folderman.cpp" line="579"/>
<source>Server is currently not available.</source>
<translation>El servidor no está disponible en el momento</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="581"/>
<location filename="../src/mirall/folderman.cpp" line="582"/>
<source>Last Sync was successful.</source>
<translation>La última sincronización fue exitosa.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="586"/>
<location filename="../src/mirall/folderman.cpp" line="587"/>
<source>Last Sync was successful, but with warnings on individual files.</source>
<translation>La última sincronización fue exitosa pero con advertencias para archivos individuales.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="589"/>
<location filename="../src/mirall/folderman.cpp" line="590"/>
<source>Setup Error.</source>
<translation>Error de configuración.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="595"/>
<location filename="../src/mirall/folderman.cpp" line="596"/>
<source>%1 (Sync is paused)</source>
<translation>%1 (Sincronización en pausa)</translation>
</message>
@@ -720,7 +720,7 @@ Está seguro de que desea realizar esta operación?</translation>
<context>
<name>Mirall::FolderWatcherPrivate</name>
<message>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="54"/>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="53"/>
<source>Could not monitor directories due to system limitations.
The application will not work reliably. Please check the
documentation for possible fixes.</source>
@@ -919,17 +919,17 @@ Checked items will also be deleted if they prevent a directory from being remove
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="60"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="57"/>
<source>3</source>
<translation>3</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="65"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="62"/>
<source>4</source>
<translation>4</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="73"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="70"/>
<source>TextLabel</source>
<translation>Texto de un etiqueta</translation>
</message>
@@ -970,51 +970,66 @@ Checked items will also be deleted if they prevent a directory from being remove
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="120"/>
<source>File ignored.</source>
<translation>Archivo ignorado.</translation>
<source>Soft Link ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="121"/>
<source>The file was ignored because it is listed in the clients ignore list
or the filename contains characters that are not syncable
in a cross platform environment.</source>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="125"/>
<source>Directory ignored.</source>
<translation>Carpeta ignorada.</translation>
<location filename="../src/mirall/itemprogressdialog.cpp" line="124"/>
<source>file</source>
<translation>archivo</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="126"/>
<source>The directory was ignored because it is listed in the clients
ignore list or the directory name contains
characters that are not syncable in a cross platform environment.</source>
<translation type="unfinished"/>
<source>directory</source>
<translation>carpeta</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="130"/>
<source>Soft Link ignored.</source>
<location filename="../src/mirall/itemprogressdialog.cpp" line="128"/>
<source>The %1 was ignored because it is listed in the clients ignore list
or the %1 name contains characters that are not syncable
in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="131"/>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories.</source>
<source>Item ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="133"/>
<source>%1 on ignore list</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="134"/>
<source>Ignored.</source>
<translation>Ignorado.</translation>
<source>The %1 was skipped because it is listed on the clients
list of names to ignore</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="137"/>
<source>Conflict file.</source>
<source>Invalid characters</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="138"/>
<source>The %1 name contains one or more invalid characters which break
syncing in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="143"/>
<source>Conflict file.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="144"/>
<source>The file was changed on server and local repository and as a result it
created a so called conflict. The local change is copied to the conflict
file while the file from the server side is available under the original
@@ -1080,23 +1095,23 @@ name</source>
<translation>Guardar el archivo de registro a un archivo en disco para depuración.</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="162"/>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="164"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Error</source>
<translation>Error</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="163"/>
<location filename="../src/mirall/logbrowser.cpp" line="165"/>
<source>&lt;nobr&gt;File &apos;%1&apos;&lt;br/&gt;cannot be opened for writing.&lt;br/&gt;&lt;br/&gt;The log output can &lt;b&gt;not&lt;/b&gt; be saved!&lt;/nobr&gt;</source>
<translation>&lt;nobr&gt;Archivo &apos;%1&apos;&lt;br/&gt;no se puede abrir para escritura.&lt;br/&gt;&lt;br/&gt;¡El archivo de registro &lt;b&gt;no&lt;/b&gt; puede ser guardado!&lt;/nobr&gt;</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="208"/>
<location filename="../src/mirall/logbrowser.cpp" line="210"/>
<source>Save log file</source>
<translation>Guardar archivo de registro</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Could not write to log file </source>
<translation>No se pudo escribir al archivo de registro</translation>
</message>
@@ -1150,29 +1165,29 @@ name</source>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="188"/>
<location filename="../src/mirall/networksettings.ui" line="281"/>
<location filename="../src/mirall/networksettings.ui" line="287"/>
<source>Limit to</source>
<translation>Limitar a</translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="210"/>
<location filename="../src/mirall/networksettings.ui" line="306"/>
<location filename="../src/mirall/networksettings.ui" line="312"/>
<source>KBytes/s</source>
<translation>KBytes/s</translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="232"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>No Limit</source>
<translation>Sin límite</translation>
<location filename="../src/mirall/networksettings.ui" line="270"/>
<source>No limit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="258"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>Upload Bandwidth</source>
<translation>Acho de banda de subida</translation>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="271"/>
<location filename="../src/mirall/networksettings.ui" line="277"/>
<source>Limit automatically</source>
<translation>Limitar automáticamente</translation>
</message>
@@ -1918,6 +1933,34 @@ name</source>
<translation>Conexión SSL</translation>
</message>
</context>
<context>
<name>Utility</name>
<message>
<location filename="../src/mirall/utility.cpp" line="114"/>
<source>%L1 TB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="117"/>
<source>%L1 GB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="120"/>
<source>%L1 MB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="123"/>
<source>%L1 kB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="126"/>
<source>%L1 B</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>main.cpp</name>
<message>
@@ -1934,7 +1977,7 @@ name</source>
<context>
<name>ownCloudTheme</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="99"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="90"/>
<source>If you don&apos;t have an ownCloud server yet, see &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt; for more info.</source>
<comment>Top text in setup wizard. Keep short!</comment>
<translation>Si aún no tiene un servidor ownCloud, visite &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt; para obtener más información.</translation>
@@ -1943,12 +1986,12 @@ name</source>
<context>
<name>ownCloudTheme::about()</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="57"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="48"/>
<source>&lt;p&gt;&lt;small&gt;Built from Git revision &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt; on %3, %4 using OCsync %5 and Qt %6.&lt;/small&gt;&lt;p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="65"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="56"/>
<source>&lt;p&gt;Version %2. For more information visit &lt;a href=&quot;%3&quot;&gt;%4&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;small&gt;By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.&lt;br&gt;Based on Mirall by Duncan Mac-Vicar P.&lt;/small&gt;&lt;/p&gt;%7</source>
<translation>&lt;p&gt;Versión %2. Para más información visite &lt;a href=&quot;%3&quot;&gt;%4&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;small&gt;Por Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.&lt;br&gt;Basado en Mirall por Duncan Mac-Vicar P.&lt;/small&gt;&lt;/p&gt;%7</translation>
</message>
@@ -1959,13 +2002,13 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="31"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="43"/>
<source>Download</source>
<translation type="unfinished"/>
<translation>Descargar</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="34"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="47"/>
<source>Upload</source>
<translation type="unfinished"/>
<translation>Subir</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="37"/>
@@ -1997,7 +2040,7 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="59"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="107"/>
<source>deleted</source>
<translation type="unfinished"/>
<translation>borrado</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="74"/>
@@ -2031,7 +2074,7 @@ name</source>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="104"/>
<source>delete</source>
<translation type="unfinished"/>
<translation>eliminar</translation>
</message>
</context>
<context>
@@ -2039,22 +2082,22 @@ name</source>
<message>
<location filename="../src/mirall/theme.cpp" line="48"/>
<source>Status undefined</source>
<translation type="unfinished"/>
<translation>Estado indefinido</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="51"/>
<source>Waiting to start sync</source>
<translation type="unfinished"/>
<translation>Esperando para comenzar la sincronización</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="54"/>
<source>Sync is running</source>
<translation type="unfinished"/>
<translation>Sincronización ejecutándose</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="57"/>
<source>Sync Success</source>
<translation type="unfinished"/>
<translation>Sincronización exitosa</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="60"/>
@@ -2064,12 +2107,12 @@ name</source>
<message>
<location filename="../src/mirall/theme.cpp" line="63"/>
<source>Sync Error - Click info button for details.</source>
<translation type="unfinished"/>
<translation>Error de sincronización - Pulse el botón de información para obtener más detalles.</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="66"/>
<source>Setup Error</source>
<translation type="unfinished"/>
<translation>Error de instalación</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="69"/>
+160 -117
Ver Arquivo
@@ -65,22 +65,22 @@
<message>
<location filename="../src/mirall/accountsettings.ui" line="20"/>
<source>Account Maintenance</source>
<translation type="unfinished"/>
<translation>Mantenimiento de cuenta</translation>
</message>
<message>
<location filename="../src/mirall/accountsettings.ui" line="29"/>
<source>Edit Ignored Files</source>
<translation type="unfinished"/>
<translation>Editar Archivos ignorados</translation>
</message>
<message>
<location filename="../src/mirall/accountsettings.ui" line="36"/>
<source>Modify Account</source>
<translation type="unfinished"/>
<translation>Modificar Cuenta</translation>
</message>
<message>
<location filename="../src/mirall/accountsettings.ui" line="46"/>
<source>Sync Status</source>
<translation type="unfinished"/>
<translation>Estado de la sincronización</translation>
</message>
<message>
<location filename="../src/mirall/accountsettings.ui" line="52"/>
@@ -191,7 +191,7 @@
<message>
<location filename="../src/mirall/accountsettings.cpp" line="581"/>
<source>Start</source>
<translation type="unfinished"/>
<translation>Inicio</translation>
</message>
<message>
<location filename="../src/mirall/accountsettings.cpp" line="590"/>
@@ -201,7 +201,7 @@
<message>
<location filename="../src/mirall/accountsettings.cpp" line="597"/>
<source>Completely</source>
<translation type="unfinished"/>
<translation>Completamente</translation>
</message>
<message>
<location filename="../src/mirall/accountsettings.cpp" line="629"/>
@@ -211,7 +211,7 @@
<message>
<location filename="../src/mirall/accountsettings.cpp" line="632"/>
<source>Completely finished.</source>
<translation type="unfinished"/>
<translation>Completamente terminado.</translation>
</message>
<message>
<location filename="../src/mirall/accountsettings.cpp" line="639"/>
@@ -227,112 +227,112 @@
<context>
<name>Mirall::Application</name>
<message>
<location filename="../src/mirall/application.cpp" line="246"/>
<location filename="../src/mirall/application.cpp" line="252"/>
<source>%1 Sync Started</source>
<translation>Sincronización de %1 iniciada</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/application.cpp" line="247"/>
<location filename="../src/mirall/application.cpp" line="253"/>
<source>Sync started for %n configured sync folder(s).</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="319"/>
<location filename="../src/mirall/application.cpp" line="325"/>
<source>Open %1 in browser</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="321"/>
<location filename="../src/mirall/application.cpp" line="327"/>
<source>Calculating quota...</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="323"/>
<location filename="../src/mirall/application.cpp" line="329"/>
<source>Unknown status</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="325"/>
<location filename="../src/mirall/application.cpp" line="331"/>
<source>Settings...</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="326"/>
<location filename="../src/mirall/application.cpp" line="332"/>
<source>Details...</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="331"/>
<location filename="../src/mirall/application.cpp" line="337"/>
<source>Help</source>
<translation>Ayuda</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="333"/>
<location filename="../src/mirall/application.cpp" line="339"/>
<source>Quit %1</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="383"/>
<location filename="../src/mirall/application.cpp" line="389"/>
<source>Open %1 folder</source>
<translation>Abrir directorio %1</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="526"/>
<location filename="../src/mirall/application.cpp" line="537"/>
<source>%1% of %2 in use</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="598"/>
<location filename="../src/mirall/application.cpp" line="609"/>
<source>Up to date</source>
<translation>actualizado</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="362"/>
<location filename="../src/mirall/application.cpp" line="368"/>
<source>None.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="366"/>
<location filename="../src/mirall/application.cpp" line="372"/>
<source>Recent Changes</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="393"/>
<location filename="../src/mirall/application.cpp" line="399"/>
<source>Managed Folders:</source>
<translation>Directorios administrados:</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="396"/>
<location filename="../src/mirall/application.cpp" line="402"/>
<source>Open folder &apos;%1&apos;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="519"/>
<location filename="../src/mirall/application.cpp" line="530"/>
<source>Quota n/a</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="552"/>
<location filename="../src/mirall/application.cpp" line="563"/>
<source>No items synced recently</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="561"/>
<location filename="../src/mirall/application.cpp" line="572"/>
<source>%1 (%2, %3)</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="576"/>
<location filename="../src/mirall/application.cpp" line="587"/>
<source>Syncing %1 of %2 (%3 of %4) </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="814"/>
<location filename="../src/mirall/application.cpp" line="825"/>
<source>Folder %1: %2</source>
<translation>Directorio %1: %2</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="820"/>
<location filename="../src/mirall/application.cpp" line="831"/>
<source>No sync folders configured.</source>
<translation>Los directorios de sincronización no están configurados.</translation>
</message>
@@ -456,28 +456,28 @@
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="143"/>
<source>CSync failed due to not handled permission deniend.</source>
<translation>CSync: Falló debido a un permiso denegado.</translation>
<source>CSync: Permission deniend.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="146"/>
<source>CSync failed to find a specific file.</source>
<translation>CSync: Falló en encontrar un archivo especifico.</translation>
<source>CSync: File not found.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="149"/>
<source>CSync tried to create a directory that already exists.</source>
<translation>Csync trató de crear un directorio que ya existía.</translation>
<source>CSync: Directory already exists.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="152"/>
<source>CSync: No space on %1 server available.</source>
<translation>CSync: No hay más espacio disponible en el servidor %1.</translation>
<source>CSync: No space left on %1 server.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="155"/>
<source>CSync unspecified error.</source>
<translation>Error no especificado de CSync</translation>
<source>CSync: unspecified error.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="158"/>
@@ -539,100 +539,100 @@
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>New file available</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>&apos;%1&apos; has been synced to this machine.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>New files available</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>&apos;%1&apos; and %n other file(s) have been synced to this machine.</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>File removed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>&apos;%1&apos; has been removed.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>Files removed</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>&apos;%1&apos; and %n other file(s) have been removed.</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>File updated</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>&apos;%1&apos; has been updated.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>Files updated</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>&apos;%1&apos; and %n other file(s) have been updated.</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="392"/>
<location filename="../src/mirall/folder.cpp" line="402"/>
<source>Error</source>
<translation>Error</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="421"/>
<location filename="../src/mirall/folder.cpp" line="431"/>
<source>The CSync thread terminated.</source>
<translation>El proceso CSync finalizó.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="661"/>
<location filename="../src/mirall/folder.cpp" line="675"/>
<source>This sync would remove all the files in the local sync folder '%1'.
If you or your administrator have reset your account on the server, choose &quot;Keep files&quot;. If you want your data to be removed, choose &quot;Remove all files&quot;.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="664"/>
<location filename="../src/mirall/folder.cpp" line="678"/>
<source>This sync would remove all the files in the sync folder '%1'.
This might be because the folder was silently reconfigured, or that all the file were manually removed.
Are you sure you want to perform this operation?</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="668"/>
<location filename="../src/mirall/folder.cpp" line="682"/>
<source>Remove All Files?</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="670"/>
<location filename="../src/mirall/folder.cpp" line="684"/>
<source>Remove all files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="671"/>
<location filename="../src/mirall/folder.cpp" line="685"/>
<source>Keep files</source>
<translation type="unfinished"/>
</message>
@@ -640,57 +640,57 @@ Are you sure you want to perform this operation?</source>
<context>
<name>Mirall::FolderMan</name>
<message>
<location filename="../src/mirall/folderman.cpp" line="133"/>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<source>Could not reset folder state</source>
<translation>No se pudo </translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<location filename="../src/mirall/folderman.cpp" line="135"/>
<source>An old sync journal &apos;%1&apos; was found, but could not be removed. Please make sure that no application is currently using it.</source>
<translation>Una antigua sincronización con journaling &apos;%1&apos; fue encontrada, pero no se pudo eliminar. Por favor, asegurate que ninguna aplicación la está utilizando.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="566"/>
<location filename="../src/mirall/folderman.cpp" line="567"/>
<source>Undefined State.</source>
<translation>Estado no definido.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="569"/>
<location filename="../src/mirall/folderman.cpp" line="570"/>
<source>Waits to start syncing.</source>
<translation>Esperando el comienzo de la sincronización.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="572"/>
<location filename="../src/mirall/folderman.cpp" line="573"/>
<source>Preparing for sync.</source>
<translation type="unfinished"/>
<translation>Preparando la sincronización.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="575"/>
<location filename="../src/mirall/folderman.cpp" line="576"/>
<source>Sync is running.</source>
<translation>Sincronización en funcionamiento.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="578"/>
<location filename="../src/mirall/folderman.cpp" line="579"/>
<source>Server is currently not available.</source>
<translation type="unfinished"/>
<translation>El servidor actualmente no está disponible.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="581"/>
<location filename="../src/mirall/folderman.cpp" line="582"/>
<source>Last Sync was successful.</source>
<translation>La última sincronización fue exitosa.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="586"/>
<location filename="../src/mirall/folderman.cpp" line="587"/>
<source>Last Sync was successful, but with warnings on individual files.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="589"/>
<location filename="../src/mirall/folderman.cpp" line="590"/>
<source>Setup Error.</source>
<translation>Error de configuración.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="595"/>
<location filename="../src/mirall/folderman.cpp" line="596"/>
<source>%1 (Sync is paused)</source>
<translation type="unfinished"/>
</message>
@@ -701,7 +701,7 @@ Are you sure you want to perform this operation?</source>
<location filename="../src/mirall/folderstatusmodel.cpp" line="91"/>
<location filename="../src/mirall/folderstatusmodel.cpp" line="245"/>
<source>File</source>
<translation type="unfinished"/>
<translation>Archivo</translation>
</message>
<message>
<location filename="../src/mirall/folderstatusmodel.cpp" line="200"/>
@@ -717,7 +717,7 @@ Are you sure you want to perform this operation?</source>
<context>
<name>Mirall::FolderWatcherPrivate</name>
<message>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="54"/>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="53"/>
<source>Could not monitor directories due to system limitations.
The application will not work reliably. Please check the
documentation for possible fixes.</source>
@@ -914,24 +914,24 @@ Checked items will also be deleted if they prevent a directory from being remove
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="60"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="57"/>
<source>3</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="65"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="62"/>
<source>4</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="73"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="70"/>
<source>TextLabel</source>
<translation>EtiquetaDeTexto</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="44"/>
<source>File</source>
<translation type="unfinished"/>
<translation>Archivo</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="46"/>
@@ -965,51 +965,66 @@ Checked items will also be deleted if they prevent a directory from being remove
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="120"/>
<source>File ignored.</source>
<source>Soft Link ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="121"/>
<source>The file was ignored because it is listed in the clients ignore list
or the filename contains characters that are not syncable
in a cross platform environment.</source>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="125"/>
<source>Directory ignored.</source>
<location filename="../src/mirall/itemprogressdialog.cpp" line="124"/>
<source>file</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="126"/>
<source>The directory was ignored because it is listed in the clients
ignore list or the directory name contains
characters that are not syncable in a cross platform environment.</source>
<source>directory</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="130"/>
<source>Soft Link ignored.</source>
<location filename="../src/mirall/itemprogressdialog.cpp" line="128"/>
<source>The %1 was ignored because it is listed in the clients ignore list
or the %1 name contains characters that are not syncable
in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="131"/>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories.</source>
<source>Item ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="133"/>
<source>%1 on ignore list</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="134"/>
<source>Ignored.</source>
<source>The %1 was skipped because it is listed on the clients
list of names to ignore</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="137"/>
<source>Conflict file.</source>
<source>Invalid characters</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="138"/>
<source>The %1 name contains one or more invalid characters which break
syncing in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="143"/>
<source>Conflict file.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="144"/>
<source>The file was changed on server and local repository and as a result it
created a so called conflict. The local change is copied to the conflict
file while the file from the server side is available under the original
@@ -1075,23 +1090,23 @@ name</source>
<translation>Guardar el log en un archivo en disco para depuración.</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="162"/>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="164"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Error</source>
<translation>Error</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="163"/>
<location filename="../src/mirall/logbrowser.cpp" line="165"/>
<source>&lt;nobr&gt;File &apos;%1&apos;&lt;br/&gt;cannot be opened for writing.&lt;br/&gt;&lt;br/&gt;The log output can &lt;b&gt;not&lt;/b&gt; be saved!&lt;/nobr&gt;</source>
<translation>&lt;nobr&gt;El archivo &apos;%1&apos;&lt;br/&gt;no puede ser abierto para escritura.&lt;br/&gt;&lt;br/&gt;¡El archivo de log &lt;b&gt;no&lt;/b&gt; puede ser guardado!&lt;/nobr&gt;</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="208"/>
<location filename="../src/mirall/logbrowser.cpp" line="210"/>
<source>Save log file</source>
<translation>Guardar archivo de log</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Could not write to log file </source>
<translation>No fue posible escribir al archivo de log</translation>
</message>
@@ -1145,29 +1160,29 @@ name</source>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="188"/>
<location filename="../src/mirall/networksettings.ui" line="281"/>
<location filename="../src/mirall/networksettings.ui" line="287"/>
<source>Limit to</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="210"/>
<location filename="../src/mirall/networksettings.ui" line="306"/>
<location filename="../src/mirall/networksettings.ui" line="312"/>
<source>KBytes/s</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="232"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>No Limit</source>
<location filename="../src/mirall/networksettings.ui" line="270"/>
<source>No limit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="258"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>Upload Bandwidth</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="271"/>
<location filename="../src/mirall/networksettings.ui" line="277"/>
<source>Limit automatically</source>
<translation type="unfinished"/>
</message>
@@ -1914,6 +1929,34 @@ name</source>
<translation>Conexión SSL</translation>
</message>
</context>
<context>
<name>Utility</name>
<message>
<location filename="../src/mirall/utility.cpp" line="114"/>
<source>%L1 TB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="117"/>
<source>%L1 GB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="120"/>
<source>%L1 MB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="123"/>
<source>%L1 kB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="126"/>
<source>%L1 B</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>main.cpp</name>
<message>
@@ -1930,7 +1973,7 @@ name</source>
<context>
<name>ownCloudTheme</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="99"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="90"/>
<source>If you don&apos;t have an ownCloud server yet, see &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt; for more info.</source>
<comment>Top text in setup wizard. Keep short!</comment>
<translation>Si todavía no tenés un servidor ownCloud, visitá &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt; para obtener más información.</translation>
@@ -1939,12 +1982,12 @@ name</source>
<context>
<name>ownCloudTheme::about()</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="57"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="48"/>
<source>&lt;p&gt;&lt;small&gt;Built from Git revision &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt; on %3, %4 using OCsync %5 and Qt %6.&lt;/small&gt;&lt;p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="65"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="56"/>
<source>&lt;p&gt;Version %2. For more information visit &lt;a href=&quot;%3&quot;&gt;%4&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;small&gt;By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.&lt;br&gt;Based on Mirall by Duncan Mac-Vicar P.&lt;/small&gt;&lt;/p&gt;%7</source>
<translation type="unfinished"/>
</message>
@@ -1955,13 +1998,13 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="31"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="43"/>
<source>Download</source>
<translation type="unfinished"/>
<translation>Descargar</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="34"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="47"/>
<source>Upload</source>
<translation type="unfinished"/>
<translation>Subir</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="37"/>
@@ -1977,7 +2020,7 @@ name</source>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="50"/>
<source>Start</source>
<translation type="unfinished"/>
<translation>Inicio</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="53"/>
@@ -1993,7 +2036,7 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="59"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="107"/>
<source>deleted</source>
<translation type="unfinished"/>
<translation>borrado</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="74"/>
@@ -2027,7 +2070,7 @@ name</source>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="104"/>
<source>delete</source>
<translation type="unfinished"/>
<translation>borrar</translation>
</message>
</context>
<context>
@@ -2035,22 +2078,22 @@ name</source>
<message>
<location filename="../src/mirall/theme.cpp" line="48"/>
<source>Status undefined</source>
<translation type="unfinished"/>
<translation>Estado indefinido</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="51"/>
<source>Waiting to start sync</source>
<translation type="unfinished"/>
<translation>Esperando para comenzar sincronización</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="54"/>
<source>Sync is running</source>
<translation type="unfinished"/>
<translation>Sincronización en ejecución</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="57"/>
<source>Sync Success</source>
<translation type="unfinished"/>
<translation>Sincronización Exitosa</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="60"/>
@@ -2060,12 +2103,12 @@ name</source>
<message>
<location filename="../src/mirall/theme.cpp" line="63"/>
<source>Sync Error - Click info button for details.</source>
<translation type="unfinished"/>
<translation>Error de sincronización - Pulsá el botón de información para obtener más detalles.</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="66"/>
<source>Setup Error</source>
<translation type="unfinished"/>
<translation>Error de instalación</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="69"/>
Diferenças do arquivo suprimidas por serem muito extensas Carregar Diff
+150 -107
Ver Arquivo
@@ -227,112 +227,112 @@
<context>
<name>Mirall::Application</name>
<message>
<location filename="../src/mirall/application.cpp" line="246"/>
<location filename="../src/mirall/application.cpp" line="252"/>
<source>%1 Sync Started</source>
<translation>%1 Sinkronizazioa hasi da</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/application.cpp" line="247"/>
<location filename="../src/mirall/application.cpp" line="253"/>
<source>Sync started for %n configured sync folder(s).</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="319"/>
<location filename="../src/mirall/application.cpp" line="325"/>
<source>Open %1 in browser</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="321"/>
<location filename="../src/mirall/application.cpp" line="327"/>
<source>Calculating quota...</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="323"/>
<location filename="../src/mirall/application.cpp" line="329"/>
<source>Unknown status</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="325"/>
<location filename="../src/mirall/application.cpp" line="331"/>
<source>Settings...</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="326"/>
<location filename="../src/mirall/application.cpp" line="332"/>
<source>Details...</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="331"/>
<location filename="../src/mirall/application.cpp" line="337"/>
<source>Help</source>
<translation>Laguntza</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="333"/>
<location filename="../src/mirall/application.cpp" line="339"/>
<source>Quit %1</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="383"/>
<location filename="../src/mirall/application.cpp" line="389"/>
<source>Open %1 folder</source>
<translation>Ireki %1 karpeta</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="526"/>
<location filename="../src/mirall/application.cpp" line="537"/>
<source>%1% of %2 in use</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="598"/>
<location filename="../src/mirall/application.cpp" line="609"/>
<source>Up to date</source>
<translation>Eguneratua</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="362"/>
<location filename="../src/mirall/application.cpp" line="368"/>
<source>None.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="366"/>
<location filename="../src/mirall/application.cpp" line="372"/>
<source>Recent Changes</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="393"/>
<location filename="../src/mirall/application.cpp" line="399"/>
<source>Managed Folders:</source>
<translation>Kudeatutako karpetak:</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="396"/>
<location filename="../src/mirall/application.cpp" line="402"/>
<source>Open folder &apos;%1&apos;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="519"/>
<location filename="../src/mirall/application.cpp" line="530"/>
<source>Quota n/a</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="552"/>
<location filename="../src/mirall/application.cpp" line="563"/>
<source>No items synced recently</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="561"/>
<location filename="../src/mirall/application.cpp" line="572"/>
<source>%1 (%2, %3)</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="576"/>
<location filename="../src/mirall/application.cpp" line="587"/>
<source>Syncing %1 of %2 (%3 of %4) </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="814"/>
<location filename="../src/mirall/application.cpp" line="825"/>
<source>Folder %1: %2</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="820"/>
<location filename="../src/mirall/application.cpp" line="831"/>
<source>No sync folders configured.</source>
<translation>Ez dago sinkronizazio karpetarik definituta.</translation>
</message>
@@ -456,28 +456,28 @@
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="143"/>
<source>CSync failed due to not handled permission deniend.</source>
<translation>CSyncek huts egin du kudeatu gabeko baimen ukapen bat dela eta.</translation>
<source>CSync: Permission deniend.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="146"/>
<source>CSync failed to find a specific file.</source>
<translation>CSyncek huts egin du fitxategi zehatz bat aurkitzen.</translation>
<source>CSync: File not found.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="149"/>
<source>CSync tried to create a directory that already exists.</source>
<translation>CSyncek dagoeneko existitzen zen karpeta bat sortzen saiatu da.</translation>
<source>CSync: Directory already exists.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="152"/>
<source>CSync: No space on %1 server available.</source>
<translation>CSync: Ez dago lekurik %1 zerbitzarian.</translation>
<source>CSync: No space left on %1 server.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="155"/>
<source>CSync unspecified error.</source>
<translation>CSyncen zehaztugabeko errorea.</translation>
<source>CSync: unspecified error.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="158"/>
@@ -539,100 +539,100 @@
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>New file available</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>&apos;%1&apos; has been synced to this machine.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>New files available</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>&apos;%1&apos; and %n other file(s) have been synced to this machine.</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>File removed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>&apos;%1&apos; has been removed.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>Files removed</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>&apos;%1&apos; and %n other file(s) have been removed.</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>File updated</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>&apos;%1&apos; has been updated.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>Files updated</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>&apos;%1&apos; and %n other file(s) have been updated.</source>
<translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="392"/>
<location filename="../src/mirall/folder.cpp" line="402"/>
<source>Error</source>
<translation>Errorea</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="421"/>
<location filename="../src/mirall/folder.cpp" line="431"/>
<source>The CSync thread terminated.</source>
<translation>CSync haria bukatu da.</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="661"/>
<location filename="../src/mirall/folder.cpp" line="675"/>
<source>This sync would remove all the files in the local sync folder '%1'.
If you or your administrator have reset your account on the server, choose &quot;Keep files&quot;. If you want your data to be removed, choose &quot;Remove all files&quot;.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="664"/>
<location filename="../src/mirall/folder.cpp" line="678"/>
<source>This sync would remove all the files in the sync folder '%1'.
This might be because the folder was silently reconfigured, or that all the file were manually removed.
Are you sure you want to perform this operation?</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="668"/>
<location filename="../src/mirall/folder.cpp" line="682"/>
<source>Remove All Files?</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="670"/>
<location filename="../src/mirall/folder.cpp" line="684"/>
<source>Remove all files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="671"/>
<location filename="../src/mirall/folder.cpp" line="685"/>
<source>Keep files</source>
<translation type="unfinished"/>
</message>
@@ -640,57 +640,57 @@ Are you sure you want to perform this operation?</source>
<context>
<name>Mirall::FolderMan</name>
<message>
<location filename="../src/mirall/folderman.cpp" line="133"/>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<source>Could not reset folder state</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<location filename="../src/mirall/folderman.cpp" line="135"/>
<source>An old sync journal &apos;%1&apos; was found, but could not be removed. Please make sure that no application is currently using it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="566"/>
<location filename="../src/mirall/folderman.cpp" line="567"/>
<source>Undefined State.</source>
<translation>Definitu gabeko egoera.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="569"/>
<location filename="../src/mirall/folderman.cpp" line="570"/>
<source>Waits to start syncing.</source>
<translation>Itxoiten sinkronizazioa hasteko.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="572"/>
<location filename="../src/mirall/folderman.cpp" line="573"/>
<source>Preparing for sync.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="575"/>
<location filename="../src/mirall/folderman.cpp" line="576"/>
<source>Sync is running.</source>
<translation>Sinkronizazioa martxan da.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="578"/>
<location filename="../src/mirall/folderman.cpp" line="579"/>
<source>Server is currently not available.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="581"/>
<location filename="../src/mirall/folderman.cpp" line="582"/>
<source>Last Sync was successful.</source>
<translation>Azkeneko sinkronizazioa ongi burutu zen.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="586"/>
<location filename="../src/mirall/folderman.cpp" line="587"/>
<source>Last Sync was successful, but with warnings on individual files.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="589"/>
<location filename="../src/mirall/folderman.cpp" line="590"/>
<source>Setup Error.</source>
<translation>Konfigurazio errorea.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="595"/>
<location filename="../src/mirall/folderman.cpp" line="596"/>
<source>%1 (Sync is paused)</source>
<translation type="unfinished"/>
</message>
@@ -717,7 +717,7 @@ Are you sure you want to perform this operation?</source>
<context>
<name>Mirall::FolderWatcherPrivate</name>
<message>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="54"/>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="53"/>
<source>Could not monitor directories due to system limitations.
The application will not work reliably. Please check the
documentation for possible fixes.</source>
@@ -914,17 +914,17 @@ Checked items will also be deleted if they prevent a directory from being remove
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="60"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="57"/>
<source>3</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="65"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="62"/>
<source>4</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="73"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="70"/>
<source>TextLabel</source>
<translation type="unfinished"/>
</message>
@@ -965,51 +965,66 @@ Checked items will also be deleted if they prevent a directory from being remove
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="120"/>
<source>File ignored.</source>
<source>Soft Link ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="121"/>
<source>The file was ignored because it is listed in the clients ignore list
or the filename contains characters that are not syncable
in a cross platform environment.</source>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="125"/>
<source>Directory ignored.</source>
<translation type="unfinished"/>
<location filename="../src/mirall/itemprogressdialog.cpp" line="124"/>
<source>file</source>
<translation>fitxategia</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="126"/>
<source>The directory was ignored because it is listed in the clients
ignore list or the directory name contains
characters that are not syncable in a cross platform environment.</source>
<translation type="unfinished"/>
<source>directory</source>
<translation>direktorioa</translation>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="130"/>
<source>Soft Link ignored.</source>
<location filename="../src/mirall/itemprogressdialog.cpp" line="128"/>
<source>The %1 was ignored because it is listed in the clients ignore list
or the %1 name contains characters that are not syncable
in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="131"/>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories.</source>
<source>Item ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="133"/>
<source>%1 on ignore list</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="134"/>
<source>Ignored.</source>
<source>The %1 was skipped because it is listed on the clients
list of names to ignore</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="137"/>
<source>Conflict file.</source>
<source>Invalid characters</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="138"/>
<source>The %1 name contains one or more invalid characters which break
syncing in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="143"/>
<source>Conflict file.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="144"/>
<source>The file was changed on server and local repository and as a result it
created a so called conflict. The local change is copied to the conflict
file while the file from the server side is available under the original
@@ -1075,23 +1090,23 @@ name</source>
<translation>Gorde egunkari fitxategia fitxategi batean arazteko.</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="162"/>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="164"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Error</source>
<translation>Errorea</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="163"/>
<location filename="../src/mirall/logbrowser.cpp" line="165"/>
<source>&lt;nobr&gt;File &apos;%1&apos;&lt;br/&gt;cannot be opened for writing.&lt;br/&gt;&lt;br/&gt;The log output can &lt;b&gt;not&lt;/b&gt; be saved!&lt;/nobr&gt;</source>
<translation>&lt;nobr&gt;&apos;%1&apos; Fitxategia&lt;br/&gt; ezin da idazteko ireki.&lt;br/&gt;&lt;br/&gt;Egunkariaren irteera &lt;b&gt;ezin&lt;/b&gt; da gorde!&lt;/nobr&gt;</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="208"/>
<location filename="../src/mirall/logbrowser.cpp" line="210"/>
<source>Save log file</source>
<translation>Gorde egunkari fitxategia</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Could not write to log file </source>
<translation>Ezin da egunkari fitxategia idatzi</translation>
</message>
@@ -1145,29 +1160,29 @@ name</source>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="188"/>
<location filename="../src/mirall/networksettings.ui" line="281"/>
<location filename="../src/mirall/networksettings.ui" line="287"/>
<source>Limit to</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="210"/>
<location filename="../src/mirall/networksettings.ui" line="306"/>
<location filename="../src/mirall/networksettings.ui" line="312"/>
<source>KBytes/s</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="232"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>No Limit</source>
<location filename="../src/mirall/networksettings.ui" line="270"/>
<source>No limit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="258"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>Upload Bandwidth</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="271"/>
<location filename="../src/mirall/networksettings.ui" line="277"/>
<source>Limit automatically</source>
<translation type="unfinished"/>
</message>
@@ -1913,6 +1928,34 @@ name</source>
<translation>SSL Konexioa</translation>
</message>
</context>
<context>
<name>Utility</name>
<message>
<location filename="../src/mirall/utility.cpp" line="114"/>
<source>%L1 TB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="117"/>
<source>%L1 GB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="120"/>
<source>%L1 MB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="123"/>
<source>%L1 kB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="126"/>
<source>%L1 B</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>main.cpp</name>
<message>
@@ -1929,7 +1972,7 @@ name</source>
<context>
<name>ownCloudTheme</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="99"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="90"/>
<source>If you don&apos;t have an ownCloud server yet, see &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt; for more info.</source>
<comment>Top text in setup wizard. Keep short!</comment>
<translation type="unfinished"/>
@@ -1938,12 +1981,12 @@ name</source>
<context>
<name>ownCloudTheme::about()</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="57"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="48"/>
<source>&lt;p&gt;&lt;small&gt;Built from Git revision &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt; on %3, %4 using OCsync %5 and Qt %6.&lt;/small&gt;&lt;p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="65"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="56"/>
<source>&lt;p&gt;Version %2. For more information visit &lt;a href=&quot;%3&quot;&gt;%4&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;small&gt;By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.&lt;br&gt;Based on Mirall by Duncan Mac-Vicar P.&lt;/small&gt;&lt;/p&gt;%7</source>
<translation type="unfinished"/>
</message>
@@ -1954,13 +1997,13 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="31"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="43"/>
<source>Download</source>
<translation type="unfinished"/>
<translation>Deskargatu</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="34"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="47"/>
<source>Upload</source>
<translation type="unfinished"/>
<translation>Igo</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="37"/>
@@ -1992,7 +2035,7 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="59"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="107"/>
<source>deleted</source>
<translation type="unfinished"/>
<translation>ezabatuta</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="74"/>
@@ -2026,7 +2069,7 @@ name</source>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="104"/>
<source>delete</source>
<translation type="unfinished"/>
<translation>ezabatu</translation>
</message>
</context>
<context>
@@ -2034,22 +2077,22 @@ name</source>
<message>
<location filename="../src/mirall/theme.cpp" line="48"/>
<source>Status undefined</source>
<translation type="unfinished"/>
<translation>Definitu gabeko egoera</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="51"/>
<source>Waiting to start sync</source>
<translation type="unfinished"/>
<translation>Itxoiten sinkronizazioaren hasiera</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="54"/>
<source>Sync is running</source>
<translation type="unfinished"/>
<translation>Sinkronizazioa martxan da</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="57"/>
<source>Sync Success</source>
<translation type="unfinished"/>
<translation>Sinkronizazioa ongi burutu da</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="60"/>
@@ -2059,12 +2102,12 @@ name</source>
<message>
<location filename="../src/mirall/theme.cpp" line="63"/>
<source>Sync Error - Click info button for details.</source>
<translation type="unfinished"/>
<translation>Sinkronizazio Errorea -Klikatu info botoia xehetasun gehiagorako.</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="66"/>
<source>Setup Error</source>
<translation type="unfinished"/>
<translation>Konfigurazio Errorea</translation>
</message>
<message>
<location filename="../src/mirall/theme.cpp" line="69"/>
+141 -98
Ver Arquivo
@@ -227,112 +227,112 @@
<context>
<name>Mirall::Application</name>
<message>
<location filename="../src/mirall/application.cpp" line="246"/>
<location filename="../src/mirall/application.cpp" line="252"/>
<source>%1 Sync Started</source>
<translation>%1 همگام سازی شروع شد.</translation>
</message>
<message numerus="yes">
<location filename="../src/mirall/application.cpp" line="247"/>
<location filename="../src/mirall/application.cpp" line="253"/>
<source>Sync started for %n configured sync folder(s).</source>
<translation type="unfinished"><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="319"/>
<location filename="../src/mirall/application.cpp" line="325"/>
<source>Open %1 in browser</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="321"/>
<location filename="../src/mirall/application.cpp" line="327"/>
<source>Calculating quota...</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="323"/>
<location filename="../src/mirall/application.cpp" line="329"/>
<source>Unknown status</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="325"/>
<location filename="../src/mirall/application.cpp" line="331"/>
<source>Settings...</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="326"/>
<location filename="../src/mirall/application.cpp" line="332"/>
<source>Details...</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="331"/>
<location filename="../src/mirall/application.cpp" line="337"/>
<source>Help</source>
<translation>راهنما</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="333"/>
<location filename="../src/mirall/application.cpp" line="339"/>
<source>Quit %1</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="383"/>
<location filename="../src/mirall/application.cpp" line="389"/>
<source>Open %1 folder</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="526"/>
<location filename="../src/mirall/application.cpp" line="537"/>
<source>%1% of %2 in use</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="598"/>
<location filename="../src/mirall/application.cpp" line="609"/>
<source>Up to date</source>
<translation>تا تاریخ</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="362"/>
<location filename="../src/mirall/application.cpp" line="368"/>
<source>None.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="366"/>
<location filename="../src/mirall/application.cpp" line="372"/>
<source>Recent Changes</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="393"/>
<location filename="../src/mirall/application.cpp" line="399"/>
<source>Managed Folders:</source>
<translation>پوشه های مدیریت شده:</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="396"/>
<location filename="../src/mirall/application.cpp" line="402"/>
<source>Open folder &apos;%1&apos;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="519"/>
<location filename="../src/mirall/application.cpp" line="530"/>
<source>Quota n/a</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="552"/>
<location filename="../src/mirall/application.cpp" line="563"/>
<source>No items synced recently</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="561"/>
<location filename="../src/mirall/application.cpp" line="572"/>
<source>%1 (%2, %3)</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="576"/>
<location filename="../src/mirall/application.cpp" line="587"/>
<source>Syncing %1 of %2 (%3 of %4) </source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="814"/>
<location filename="../src/mirall/application.cpp" line="825"/>
<source>Folder %1: %2</source>
<translation>پوشه %1: %2</translation>
</message>
<message>
<location filename="../src/mirall/application.cpp" line="820"/>
<location filename="../src/mirall/application.cpp" line="831"/>
<source>No sync folders configured.</source>
<translation>هیچ پوشه ای همگام سازی شدهای تنظیم نشده است</translation>
</message>
@@ -456,28 +456,28 @@
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="143"/>
<source>CSync failed due to not handled permission deniend.</source>
<source>CSync: Permission deniend.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="146"/>
<source>CSync failed to find a specific file.</source>
<translation>عدم موفقیت CSync در پیدا کردن یک فایل خاص.</translation>
<source>CSync: File not found.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="149"/>
<source>CSync tried to create a directory that already exists.</source>
<translation>CSync برای ایجاد یک پوشه که در حال حاضر موجود است تلاش کرده است.</translation>
<source>CSync: Directory already exists.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="152"/>
<source>CSync: No space on %1 server available.</source>
<translation>CSync: فضا در %1 سرور در دسترس نیست.</translation>
<source>CSync: No space left on %1 server.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="155"/>
<source>CSync unspecified error.</source>
<translation>خطای نامشخص CSync </translation>
<source>CSync: unspecified error.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/csyncthread.cpp" line="158"/>
@@ -539,100 +539,100 @@
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>New file available</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="332"/>
<location filename="../src/mirall/folder.cpp" line="342"/>
<source>&apos;%1&apos; has been synced to this machine.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>New files available</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="334"/>
<location filename="../src/mirall/folder.cpp" line="344"/>
<source>&apos;%1&apos; and %n other file(s) have been synced to this machine.</source>
<translation type="unfinished"><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>File removed</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="340"/>
<location filename="../src/mirall/folder.cpp" line="350"/>
<source>&apos;%1&apos; has been removed.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>Files removed</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="342"/>
<location filename="../src/mirall/folder.cpp" line="352"/>
<source>&apos;%1&apos; and %n other file(s) have been removed.</source>
<translation type="unfinished"><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>File updated</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="348"/>
<location filename="../src/mirall/folder.cpp" line="358"/>
<source>&apos;%1&apos; has been updated.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>Files updated</source>
<translation type="unfinished"/>
</message>
<message numerus="yes">
<location filename="../src/mirall/folder.cpp" line="350"/>
<location filename="../src/mirall/folder.cpp" line="360"/>
<source>&apos;%1&apos; and %n other file(s) have been updated.</source>
<translation type="unfinished"><numerusform></numerusform></translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="392"/>
<location filename="../src/mirall/folder.cpp" line="402"/>
<source>Error</source>
<translation>خطا</translation>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="421"/>
<location filename="../src/mirall/folder.cpp" line="431"/>
<source>The CSync thread terminated.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="661"/>
<location filename="../src/mirall/folder.cpp" line="675"/>
<source>This sync would remove all the files in the local sync folder '%1'.
If you or your administrator have reset your account on the server, choose &quot;Keep files&quot;. If you want your data to be removed, choose &quot;Remove all files&quot;.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="664"/>
<location filename="../src/mirall/folder.cpp" line="678"/>
<source>This sync would remove all the files in the sync folder '%1'.
This might be because the folder was silently reconfigured, or that all the file were manually removed.
Are you sure you want to perform this operation?</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="668"/>
<location filename="../src/mirall/folder.cpp" line="682"/>
<source>Remove All Files?</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="670"/>
<location filename="../src/mirall/folder.cpp" line="684"/>
<source>Remove all files</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folder.cpp" line="671"/>
<location filename="../src/mirall/folder.cpp" line="685"/>
<source>Keep files</source>
<translation type="unfinished"/>
</message>
@@ -640,57 +640,57 @@ Are you sure you want to perform this operation?</source>
<context>
<name>Mirall::FolderMan</name>
<message>
<location filename="../src/mirall/folderman.cpp" line="133"/>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<source>Could not reset folder state</source>
<translation>نمی تواند حالت پوشه را تنظیم مجدد کند</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="134"/>
<location filename="../src/mirall/folderman.cpp" line="135"/>
<source>An old sync journal &apos;%1&apos; was found, but could not be removed. Please make sure that no application is currently using it.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="566"/>
<location filename="../src/mirall/folderman.cpp" line="567"/>
<source>Undefined State.</source>
<translation>موقعیت تعریف نشده</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="569"/>
<location filename="../src/mirall/folderman.cpp" line="570"/>
<source>Waits to start syncing.</source>
<translation>صبر کنید تا همگام سازی آغاز شود</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="572"/>
<location filename="../src/mirall/folderman.cpp" line="573"/>
<source>Preparing for sync.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="575"/>
<location filename="../src/mirall/folderman.cpp" line="576"/>
<source>Sync is running.</source>
<translation>همگام سازی در حال اجراست</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="578"/>
<location filename="../src/mirall/folderman.cpp" line="579"/>
<source>Server is currently not available.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="581"/>
<location filename="../src/mirall/folderman.cpp" line="582"/>
<source>Last Sync was successful.</source>
<translation>آخرین همگام سازی موفقیت آمیز بود</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="586"/>
<location filename="../src/mirall/folderman.cpp" line="587"/>
<source>Last Sync was successful, but with warnings on individual files.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="589"/>
<location filename="../src/mirall/folderman.cpp" line="590"/>
<source>Setup Error.</source>
<translation>خطا در پیکر بندی.</translation>
</message>
<message>
<location filename="../src/mirall/folderman.cpp" line="595"/>
<location filename="../src/mirall/folderman.cpp" line="596"/>
<source>%1 (Sync is paused)</source>
<translation type="unfinished"/>
</message>
@@ -717,7 +717,7 @@ Are you sure you want to perform this operation?</source>
<context>
<name>Mirall::FolderWatcherPrivate</name>
<message>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="54"/>
<location filename="../src/mirall/folderwatcher_inotify.cpp" line="53"/>
<source>Could not monitor directories due to system limitations.
The application will not work reliably. Please check the
documentation for possible fixes.</source>
@@ -914,17 +914,17 @@ Checked items will also be deleted if they prevent a directory from being remove
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="60"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="57"/>
<source>3</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="65"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="62"/>
<source>4</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.ui" line="73"/>
<location filename="../src/mirall/itemprogressdialog.ui" line="70"/>
<source>TextLabel</source>
<translation>برچسب متنی</translation>
</message>
@@ -965,51 +965,66 @@ Checked items will also be deleted if they prevent a directory from being remove
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="120"/>
<source>File ignored.</source>
<source>Soft Link ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="121"/>
<source>The file was ignored because it is listed in the clients ignore list
or the filename contains characters that are not syncable
in a cross platform environment.</source>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="125"/>
<source>Directory ignored.</source>
<location filename="../src/mirall/itemprogressdialog.cpp" line="124"/>
<source>file</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="126"/>
<source>The directory was ignored because it is listed in the clients
ignore list or the directory name contains
characters that are not syncable in a cross platform environment.</source>
<source>directory</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="130"/>
<source>Soft Link ignored.</source>
<location filename="../src/mirall/itemprogressdialog.cpp" line="128"/>
<source>The %1 was ignored because it is listed in the clients ignore list
or the %1 name contains characters that are not syncable
in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="131"/>
<source>Softlinks break the semantics of synchronization.
Please do not use them in synced directories.</source>
<source>Item ignored</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="133"/>
<source>%1 on ignore list</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="134"/>
<source>Ignored.</source>
<source>The %1 was skipped because it is listed on the clients
list of names to ignore</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="137"/>
<source>Conflict file.</source>
<source>Invalid characters</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="138"/>
<source>The %1 name contains one or more invalid characters which break
syncing in a cross platform environment</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="143"/>
<source>Conflict file.</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/itemprogressdialog.cpp" line="144"/>
<source>The file was changed on server and local repository and as a result it
created a so called conflict. The local change is copied to the conflict
file while the file from the server side is available under the original
@@ -1075,23 +1090,23 @@ name</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="162"/>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="164"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Error</source>
<translation>خطا</translation>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="163"/>
<location filename="../src/mirall/logbrowser.cpp" line="165"/>
<source>&lt;nobr&gt;File &apos;%1&apos;&lt;br/&gt;cannot be opened for writing.&lt;br/&gt;&lt;br/&gt;The log output can &lt;b&gt;not&lt;/b&gt; be saved!&lt;/nobr&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="208"/>
<location filename="../src/mirall/logbrowser.cpp" line="210"/>
<source>Save log file</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/logbrowser.cpp" line="218"/>
<location filename="../src/mirall/logbrowser.cpp" line="220"/>
<source>Could not write to log file </source>
<translation type="unfinished"/>
</message>
@@ -1145,29 +1160,29 @@ name</source>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="188"/>
<location filename="../src/mirall/networksettings.ui" line="281"/>
<location filename="../src/mirall/networksettings.ui" line="287"/>
<source>Limit to</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="210"/>
<location filename="../src/mirall/networksettings.ui" line="306"/>
<location filename="../src/mirall/networksettings.ui" line="312"/>
<source>KBytes/s</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="232"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>No Limit</source>
<location filename="../src/mirall/networksettings.ui" line="270"/>
<source>No limit</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="258"/>
<location filename="../src/mirall/networksettings.ui" line="264"/>
<source>Upload Bandwidth</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/networksettings.ui" line="271"/>
<location filename="../src/mirall/networksettings.ui" line="277"/>
<source>Limit automatically</source>
<translation type="unfinished"/>
</message>
@@ -1913,6 +1928,34 @@ name</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>Utility</name>
<message>
<location filename="../src/mirall/utility.cpp" line="114"/>
<source>%L1 TB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="117"/>
<source>%L1 GB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="120"/>
<source>%L1 MB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="123"/>
<source>%L1 kB</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/utility.cpp" line="126"/>
<source>%L1 B</source>
<translation type="unfinished"/>
</message>
</context>
<context>
<name>main.cpp</name>
<message>
@@ -1929,7 +1972,7 @@ name</source>
<context>
<name>ownCloudTheme</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="99"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="90"/>
<source>If you don&apos;t have an ownCloud server yet, see &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt; for more info.</source>
<comment>Top text in setup wizard. Keep short!</comment>
<translation>اگر شما هنوز یک سرور ownCloud ندارید، &lt;a href=&quot;https://owncloud.com&quot;&gt;owncloud.com&lt;/a&gt; را برای اطلاعات بیشتر ببینید. </translation>
@@ -1938,12 +1981,12 @@ name</source>
<context>
<name>ownCloudTheme::about()</name>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="57"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="48"/>
<source>&lt;p&gt;&lt;small&gt;Built from Git revision &lt;a href=&quot;%1&quot;&gt;%2&lt;/a&gt; on %3, %4 using OCsync %5 and Qt %6.&lt;/small&gt;&lt;p&gt;</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../src/mirall/owncloudtheme.cpp" line="65"/>
<location filename="../src/mirall/owncloudtheme.cpp" line="56"/>
<source>&lt;p&gt;Version %2. For more information visit &lt;a href=&quot;%3&quot;&gt;%4&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;small&gt;By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.&lt;br&gt;Based on Mirall by Duncan Mac-Vicar P.&lt;/small&gt;&lt;/p&gt;%7</source>
<translation type="unfinished"/>
</message>
@@ -1954,13 +1997,13 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="31"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="43"/>
<source>Download</source>
<translation type="unfinished"/>
<translation>دانلود</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="34"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="47"/>
<source>Upload</source>
<translation type="unfinished"/>
<translation>بارگزاری</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="37"/>
@@ -1992,7 +2035,7 @@ name</source>
<location filename="../src/mirall/progressdispatcher.cpp" line="59"/>
<location filename="../src/mirall/progressdispatcher.cpp" line="107"/>
<source>deleted</source>
<translation type="unfinished"/>
<translation>حذف شده</translation>
</message>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="74"/>
@@ -2026,7 +2069,7 @@ name</source>
<message>
<location filename="../src/mirall/progressdispatcher.cpp" line="104"/>
<source>delete</source>
<translation type="unfinished"/>
<translation>پاک کردن</translation>
</message>
</context>
<context>

Alguns arquivos não foram exibidos porque demasiados arquivos foram alterados neste diff Mostrar Mais