Commit graph

1951 commits

Author SHA1 Message Date
Klaas Freitag
dd6b71bad6 Use a stopwatch to meassure the time consumed. 2014-03-26 18:16:27 +01:00
Klaas Freitag
9af2339596 Store the request duration and timestamp to final item 2014-03-26 18:16:27 +01:00
Klaas Freitag
0fcef5f604 Add data to store interesting info from the sync run (other tree) 2014-03-26 18:16:27 +01:00
Klaas Freitag
c41935d49d Add a class to write a machine readable sync log file. 2014-03-26 18:16:27 +01:00
Klaas Freitag
7b84defd56 Add a stopwatch utility class with lap times.
Allows to meassure the duration of something that started at a
point of time, with some small convenience methods.
2014-03-26 18:16:27 +01:00
Klaas Freitag
505429b582 Add a duration and the repsonse timestamp to the jobs. 2014-03-26 18:16:27 +01:00
Klaas Freitag
11bbad79e2 Use QTimer as object member rather than pointer based.
Avoid crashes if timer is zero.
2014-03-26 18:16:27 +01:00
Klaas Freitag
6e6f647c63 Change data type for fileId to QByteArray. 2014-03-26 18:12:22 +01:00
Olivier Goffart
2ad7b0aae0 Fix crash on first run when no account are configured 2014-03-26 17:42:05 +01:00
Olivier Goffart
588633a0f2 Fix leak: don't leak the settings 2014-03-26 17:42:05 +01:00
Markus Goetz
d5659442b2 SyncEngine: Sanity bail out if DB does not exist suddenly
The update/reconcile worked for me, but the Propagate step had an invalid DB
path but still went on (and then messed things up)
2014-03-26 16:57:50 +01:00
Markus Goetz
c6e5f39f7f SyncJournalDb: Verbose log on load failure 2014-03-26 16:40:00 +01:00
Olivier Goffart
38344589c4 Exxtract the exception message from reply to PUT
Might be usefull to debug Internal Server Error

Fixes #1366
2014-03-26 12:02:22 +01:00
Daniel Molkentin
1c4af687ea Compile on Mac again 2014-03-26 07:20:24 +01:00
Daniel Molkentin
c3d37efa6c Fix OS X compilation 2014-03-25 23:33:46 +01:00
Daniel Molkentin
45ec489f71 Merge branch 'master' of github.com:shadone/mirall into shadone-master
Conflicts:
	cmake/modules/QtVersionAbstraction.cmake
	src/CMakeLists.txt
	src/mirall/owncloudgui.cpp
2014-03-25 19:56:45 +01:00
Daniel Molkentin
e2fe4972d9 Don't show ocsync version, it's part of mirall now 2014-03-25 19:04:05 +01:00
Mathieu Arnold
84b4872938 And make it runnable on FreeBSD too.
Patch by:	Tobias Berner
2014-03-25 17:23:11 +01:00
Mathieu Arnold
3f9bd1d72a Fix build on FreeBSD.
We use libinotify, so the linux folderwatcher works.

Based on a patch by:	Tobias Berner
2014-03-25 17:22:54 +01:00
Markus Goetz
91f416ffc7 Fix compile after changing Account::davPath() 2014-03-22 09:41:32 +01:00
Sandro Knauß
47274f1075 Merge remote-tracking branch 'respect-XDG_CONFIG_HOME' into 1.5 2014-03-21 17:20:15 +01:00
Markus Goetz
ff95cbd04b Account: Don't hardcode WebDAV path 2014-03-21 17:14:04 +01:00
Markus Goetz
cc5fabdab0 Engine: Introduce jobCompleted() signal 2014-03-21 17:13:02 +01:00
Markus Goetz
f72e1cc837 Log: Don't override level for csync
The level shall be set from Folder or owncloudCmd only.
2014-03-21 13:52:35 +01:00
Olivier Goffart
bb9d6b34c7 Remove FIXME and TODO
They are outdated
2014-03-20 16:42:43 +01:00
Olivier Goffart
07025c7432 Remove a FIXME
The commit message say that this line should be necessary to show
the information when the setting dialog is open,  but this is working
now via the signals
2014-03-20 16:42:43 +01:00
Olivier Goffart
b65601aaa4 Remove FIXME
This has been refactored since the comment was added and is no longer a hack
2014-03-20 16:42:43 +01:00
Olivier Goffart
756e1c4a12 Prefer the use of _isDirectory over item._type == SyncFileItem::Directory 2014-03-20 16:42:42 +01:00
Olivier Goffart
c5f8a2555d Rename _dir to _direction
(to avoid confusion with directory)
2014-03-20 16:42:42 +01:00
Olivier Goffart
a1ab9c84c7 Remove FIXME in syncengine 2014-03-20 16:42:42 +01:00
Olivier Goffart
23f3a6b319 restore the last change menu
It was not yet implemented after the progress refactoring
2014-03-20 14:43:10 +01:00
Olivier Goffart
ebeb668a62 QNAM jobs: Make sure there is an etag is proper and not changed when one resume
Those tests are existing on the legacy jobs.

We check there is an etag so we make sure a proxy is not in between.
(We have seen user complaining because their proxy is replacing the
pages with one that says they need to enter their login and password)

Also it is important to check that the etag has not changed if we resume
(this may happen if the file is changed on the server between the update
phase and the propagate phase,  and that we resume this file)
2014-03-20 13:31:42 +01:00
Olivier Goffart
05d3273591 Detect the error that may happen when downloading a file 2014-03-20 11:35:30 +01:00
Olivier Goffart
6377dca4b0 Add the file and line number of the debug in the debug view 2014-03-17 12:15:45 +01:00
Olivier Goffart
f05320c32c Clean the debug a bit 2014-03-17 12:15:16 +01:00
Olivier Goffart
b0f8a24c20 CSyncThread was renamed, give proper names in Folder
take in account that the object live in the same thread
2014-03-17 11:47:23 +01:00
Olivier Goffart
7b482c0e96 Rename CSyncThread to SyncEngine
CSyncThread has not been a thread for a long time now
2014-03-17 11:34:51 +01:00
Olivier Goffart
bf5091d862 Merge branch '1.5' 2014-03-17 11:26:28 +01:00
Olivier Goffart
5c45ede4a5 Read the quota as double
The server is sending floating point number when the amount of storage
is set to a custom number (say 1.2GB)

This should fix #1374
2014-03-17 10:37:06 +01:00
Olivier Goffart
cabcdd890e Only run the CheckQuota job if the account is connected
We use another job to check the connection.
And this may cause wrong password failure as we are still in the wizzard

Fixes #1567
2014-03-17 10:35:43 +01:00
Olivier Goffart
ba300c2fc1 Fix memory leak: Don't use raw pointers 2014-03-17 10:04:42 +01:00
Olivier Goffart
62e95e540b Remove Progress::Kind
It's not really used,  one need to  look at the instruction of the items
being processed to see what happens
2014-03-14 18:43:23 +01:00
Olivier Goffart
d744b5e481 Fix the file count in the progress
And clear the ignored files between syncs
2014-03-14 18:29:23 +01:00
Olivier Goffart
f9b82d852c Do not destroy the settings dialog when it is hidden.
That way the protocol widget stay filled.
And the state is kept
2014-03-14 17:39:20 +01:00
Olivier Goffart
33289bde29 Merge remote-tracking branch 'origin/1.5'
Conflicts:
	CMakeLists.txt
	VERSION.cmake
	src/CMakeLists.txt
2014-03-14 17:27:50 +01:00
Olivier Goffart
9053662fe8 remove Progress::SyncProblem and the problem slots
They are merged into normal progress
2014-03-14 17:18:26 +01:00
Markus Goetz
07904e078a CSyncThread: Emit a signal for each file before propagate
This can be used to display info before the sync is happening
2014-03-14 14:08:32 +01:00
Olivier Goffart
aacc278583 Refactor the progress
Consider that there might be several files processed at the same time
2014-03-14 13:32:32 +01:00
Denis Dzyubenko
aee4c06b8d Renamed a member variable to have underscore prefix for consistency 2014-03-11 20:34:00 +01:00
Denis Dzyubenko
89a4833cae Fixed a memory leak in FSEvents folderwatcher backend 2014-03-11 20:34:00 +01:00
Denis Dzyubenko
255d255217 Fixed ignored paths matching on OS X.
We now listen to changes to files and when an event is received we first match
the file name to the "ignored paths list" and only if the the file that was
changed didn't match figure out which directory needs to be synced.
2014-03-11 20:34:00 +01:00
Denis Dzyubenko
902de2dc93 Fixed a memory leak in FSEvents file system watcher 2014-03-11 20:34:00 +01:00
Denis Dzyubenko
f7c075099b Removed bogus commented out line 2014-03-11 20:34:00 +01:00
Klaas Freitag
bc41e6bc99 Allow proper translation for sync activity through GuiLog.
This fixes bug #1550
2014-03-11 10:55:20 +01:00
Klaas Freitag
c8a8eb35fa Disable the folder if it is going to be removed. 2014-03-10 12:22:06 +01:00
Olivier Goffart
7cab77e879 Call the start method assyncroniously
That was my intention, which is why i did not do a direct call to start.

This should fix issue #1536
2014-03-06 21:01:08 +01:00
Olivier Goffart
feb49b2768 Saner defaults 2014-03-06 20:34:11 +01:00
Olivier Goffart
4e25595520 Better error classification 2014-03-06 20:33:17 +01:00
Markus Goetz
630f61142a Proxy: Try to fix issue
See eb7074e9f0 for discussion
2014-03-06 17:48:18 +01:00
Olivier Goffart
ac393c6374 Do not sent more chunk and cancel the upload when the file change while uploading chunks 2014-03-06 16:04:32 +01:00
Olivier Goffart
5e012366ab Keep string translatable
(In french, one may want to add a space before the colon.
Other languages may want to change the order)

Also use the two argument version of arg() to avoid issues if the first
string contains a '%1' sign
2014-03-06 15:01:34 +01:00
Olivier Goffart
ed1294d668 Avoid double delete 2014-03-06 14:28:58 +01:00
Olivier Goffart
ed2316a53f Add missing line break
(silent warning)
2014-03-06 14:10:42 +01:00
Olivier Goffart
e5a8cd4521 Merge branch '1.5'
Conflicts:
	VERSION.cmake
2014-03-06 14:10:08 +01:00
Jan-Christoph Borchardt
5ce4763868 move percent indicator of space usage to correct location 2014-03-05 12:55:32 +01:00
Jan-Christoph Borchardt
bafc90cfd8 clarify which space is used, fix #1517 2014-03-05 12:54:47 +01:00
Klaas Freitag
66b152ac69 Remove left over member variables. 2014-03-03 18:12:12 +01:00
Olivier Goffart
6df00ad08c Only removes the password from the credidentials if it has been fetched before
Also only run the propfind job if the credidentials are readon, and fetch them
otherwise
2014-03-03 17:55:15 +01:00
Olivier Goffart
76b24ff00d Revert "Do not wipe the credentials from config for reconnect."
This reverts commit 9eb3452a71.

We need that or wrong password can never be changed
2014-03-03 17:21:20 +01:00
Klaas Freitag
9eb3452a71 Do not wipe the credentials from config for reconnect.
This should fix bug #1491
2014-03-03 16:39:38 +01:00
Klaas Freitag
228de7eede Make the CheckServerJob ignoring credential fails. 2014-03-03 16:37:29 +01:00
Klaas Freitag
2164f5d9b7 Remove a superflous MessageBox. User is asked for Password instead. 2014-03-03 16:36:59 +01:00
Klaas Freitag
4240010046 Add method clearCookieJar which wipes QNAMs cookies. 2014-03-03 16:36:30 +01:00
Olivier Goffart
0658802048 Fix layout of the network tab
Fixes #1491
2014-02-28 13:17:04 +01:00
Olivier Goffart
96c535d712 Make the parrallel uploaded also check for problem in Shared 2014-02-27 14:13:22 +01:00
Markus Goetz
a652fec5a0 csync: Remove more unused stuff 2014-02-27 13:33:22 +01:00
Olivier Goffart
d4fa955950 Don't fetch credidentials from application.cpp
They will be fetched by the connection validator after doing
the status.php check
2014-02-27 13:06:29 +01:00
Olivier Goffart
869793592d Merge branch '1.5'
Conflicts:
	VERSION.cmake
	src/mirall/owncloudpropagator.cpp
	src/mirall/owncloudpropagator.h
2014-02-27 11:40:34 +01:00
Daniel Molkentin
d4dd5afbe7 Revert "Make "Sign Out" forget the cookies"
This reverts commit 8607300195.

This approach is too dangerous for 1.5.2.
2014-02-26 15:05:15 +01:00
Olivier Goffart
8607300195 Make "Sign Out" forget the cookies
If we keep the cookies, next time we sign in, the entered password
does not matter as the server still think our session is logged in.
2014-02-26 13:23:52 +01:00
Daniel Molkentin
05a1f7b1bb Another fix for the reconnect-logic 2014-02-26 11:26:50 +01:00
Markus Goetz
c7e70533a0 Shibboleth: Detect also QNAM redirects
If a QNAM job (e.g. Quota or ETag job) gets redirected,
we'll invalidate and then prompt to re-fetch the credentials
from the user.
(The keychain credentials will be wrong so they get deleted)
2014-02-25 14:22:55 +01:00
Markus Goetz
b56843ead2 Account: Fix Metatype registratition 2014-02-24 15:31:11 +01:00
Markus Goetz
51b5f3c9b2 Propfind Job: Print redirect URL in log 2014-02-24 15:20:49 +01:00
Daniel Molkentin
7f508c0718 Account needs qRegisterMetaType 2014-02-24 14:56:57 +01:00
Daniel Molkentin
45a7d4ff4c Fix Wizard when returning from later steps
We need to reset the credential type when
returning to the first page from later steps.
Otherwise, unfinished credential instances
and their NAM will try to fetch data, which
will fail with weird symptoms.
2014-02-24 14:56:57 +01:00
Daniel Molkentin
995e8938ad SSLButton: Fix certificate display 2014-02-24 14:56:56 +01:00
Daniel Molkentin
5c1d612761 Account settings: Set correct state icon right away 2014-02-21 21:02:35 +01:00
Olivier Goffart
cd13144415 Fix adding a file in a Shared readonly directory
It should not create a conflict in that case.

Also when editing a file, create a conflict using the normal way,
after downloading the file and checking it is not the same
2014-02-21 10:53:09 +01:00
Daniel Molkentin
8e7290b450 Fix online state handling
Before this commit, parts of mirall were aware of the state, but not all.
Also, the state was not set back to Connected again in all cases. This
commit introduces the following changes:

- Make QuotaInfo a member of Account
- QuotaInfo and Folder (EtagJob) can put the client in disconnected mode
- FolderMan now disables etag-polling when offline

Fixes #1459
Fixes #1441
2014-02-20 23:24:03 +01:00
Daniel Molkentin
30d0e2fee8 Remove stray debug 2014-02-20 23:23:46 +01:00
dragotin
c38c3ce6e2 Merge pull request #1450 from owncloud/remove-file-string
remove 'File' word from notification
2014-02-20 17:31:57 +01:00
Klaas Freitag
82afb3b613 If a file in a read only share was edited, restore and create conflict.
This fixes bug #1448
2014-02-19 17:21:43 +01:00
Olivier Goffart
f5e16540a1 Merge branch '1.5'
Conflicts:
	src/mirall/owncloudpropagator.cpp
2014-02-19 15:38:03 +01:00
Olivier Goffart
e74f0f2854 Better support when user remove or rename the Shared directory 2014-02-19 15:23:36 +01:00
Markus Goetz
65ffe53c20 Register metatype at better place 2014-02-19 14:53:31 +01:00
Markus Goetz
06f2989ac8 Fix build on Qt4
Unfortunately I had to remove the 'static'
2014-02-19 13:29:00 +01:00
Olivier Goffart
a51f050a08 More fix for moving shared directories
Abort a directory job if the first job fails

Also make sure the jobs are in the directory job of their destination paths
2014-02-19 13:08:35 +01:00
Olivier Goffart
1be322579c Merge remote-tracking branch 'origin/master'
Conflicts:
	src/owncloudcmd/owncloudcmd.cpp
2014-02-19 11:19:56 +01:00
Markus Goetz
b7c7c9f3eb Accountsettings: Fix warning 2014-02-19 10:59:57 +01:00
Markus Goetz
63083a558b OwncloudCmd: Print update phase duration values 2014-02-19 10:51:04 +01:00
Olivier Goffart
d4bd327fef Merge branch 'parallel_upload'
Conflicts:
	src/mirall/csyncthread.cpp
2014-02-19 10:24:34 +01:00
Olivier Goffart
2de288c5f3 Merge remote-tracking branch 'origin/1.5'
Conflicts:
	VERSION.cmake
2014-02-19 10:21:23 +01:00
Markus Goetz
fcc0e89044 Update phase: Allow benchmarking / progress update 2014-02-18 21:41:20 +01:00
Jan-Christoph Borchardt
8267b9e590 remove 'File' word from notification 2014-02-18 18:42:49 +01:00
Klaas Freitag
e4965ab06b Mac FS watcher: ignore events from the same process 2014-02-18 16:28:25 +01:00
Olivier Goffart
496d900fee Refactor the renameReplace in its own function
Share a bit more code between legacy and qnam download job
2014-02-18 14:05:52 +01:00
Olivier Goffart
58bda69f8b PropagateRemoteRename is not a legacy job
move it back to propagatorjobs.cpp
2014-02-18 13:52:40 +01:00
Olivier Goffart
89b5ddec56 Fix the logs in the update phase
Since csync use a thread local variable for the logs, we need
to reset it when we enter the update thread
2014-02-18 13:48:13 +01:00
Olivier Goffart
f7419094f3 move the file system helpers in their own file 2014-02-18 12:54:40 +01:00
Olivier Goffart
432f377750 Use the legacy jobs when using bandwidth limiting
Or if a environement variable is set
2014-02-18 12:24:35 +01:00
Olivier Goffart
c32beb957d Move the jobs around between files
Renamed owncloudpropagator_qnam  to propagator_qnam
Move the jobs in propagatorjobs.cpp
Move the neon jobs that have a qnam equivalent into propagator_legacy.cpp and
rename the jobs accordingly
2014-02-18 12:21:05 +01:00
Denis Dzyubenko
a51cb0982b Added Mac-specific settings dialog that looks more native 2014-02-18 02:22:16 +01:00
hefee
1b03dc759b fixing typo
GNU Public License->  GNU General Public License
2014-02-17 22:42:51 +01:00
Olivier Goffart
a39caa1cda Make owncloudcmd work with the parallel upload/download
Also make it work when there syncing a remote subfolder
2014-02-17 17:31:03 +01:00
Olivier Goffart
a4ee8d6f6f Remove unused function 2014-02-17 15:25:47 +01:00
Olivier Goffart
b35e38f80f Parallel download 2014-02-17 13:48:56 +01:00
Klaas Freitag
e134ae22ac Disable explorer.exe integration on WinXP 2014-02-13 17:21:30 +01:00
Daniel Molkentin
e66757335b Theme: Update general disclaimer. 2014-02-13 17:04:52 +01:00
Olivier Goffart
7b6269b4bf Fix chunking
- Do not start them in parallel, start them in sequence instead, as they are quite
  and there are already other jobs running in parallel normaly
- Do not load the fill into memory
- Support resuming
2014-02-13 14:02:05 +01:00
Markus Goetz
8b9cd432b5 OS X: Read system-wide plist in /Library
Needed for http://doc.owncloud.org/desktop/1.5/autoupdate.html#preventing-auto-updates
2014-02-13 12:52:57 +01:00
Daniel Molkentin
beb9752f09 Merge remote-tracking branch 'origin/1.5' 2014-02-12 21:17:06 +01:00
Daniel Molkentin
fd40a25030 Use the appName (which is the short name) instead of the full length name
The full length name is allowed to change (or should be)
2014-02-12 18:06:01 +01:00
Daniel Molkentin
05ae467cd5 Remove debug 2014-02-12 18:05:28 +01:00
Daniel Molkentin
958253bb2b Respect skipUpdate policy from global config files and windows policy. 2014-02-12 17:55:05 +01:00
Daniel Molkentin
bcf73cfc40 SSLButton: Omit arrow on Windows which can't display it 2014-02-12 17:55:05 +01:00
Daniel Molkentin
f79ecfe001 more verbose ssl error logging 2014-02-12 17:54:45 +01:00
Olivier Goffart
a4442ebb40 Merge branch 'master' into parallel_upload
Conflicts:
	src/mirall/owncloudpropagator.cpp
	src/mirall/owncloudpropagator.h
2014-02-12 16:50:45 +01:00
Olivier Goffart
93f31fa9d7 Merge branch '1.5' 2014-02-12 16:44:24 +01:00
Olivier Goffart
f35b1f8a2b Only starts 6 jobs in parallel 2014-02-12 16:33:55 +01:00
Olivier Goffart
6db8daabf7 Make abort work even when there are parallel uploads 2014-02-12 16:33:55 +01:00
Olivier Goffart
a677f97b7f Fix removing and renaming directories from the Shared directory 2014-02-12 13:44:55 +01:00
Olivier Goffart
01c0a3c099 use Utility::sleep 2014-02-12 11:16:27 +01:00
Markus Goetz
153aa31da2 OS X: Workaround Qt5 QNAM bug
This made the sign out/sign in handling not work.

(cherry picked from commit 104cf680a6)
2014-02-12 11:14:43 +01:00
Markus Goetz
8c9a65635f Propagator: Fix compilation
It is still protected on Qt4
2014-02-10 15:46:09 +01:00
Markus Goetz
104cf680a6 OS X: Workaround Qt5 QNAM bug
This made the sign out/sign in handling not work.
2014-02-10 15:42:46 +01:00
Markus Goetz
79d14f0760 Propagator: Use cross platform sleep function 2014-02-10 14:34:48 +01:00
Klaas Freitag
6387777c18 Added chunking for the new uploading. 2014-02-10 13:00:22 +01:00
Klaas Freitag
41a4f1fc37 Only wait half a second before the next folder sync is started. 2014-02-07 11:53:58 +01:00
Olivier Goffart
bb378902ae Also force an update of the etag in case of renames
Imagine we have a file:
  foo/bar/moo
if we do     mv 'foo' 'foo2' and that we issue a MOVE on the server
and will update the entry 'foo' in the database with the new etag
If we write the etag of foo but not the etag of the sub item, when
we read from db on the next sync, we will miss them and beleive they
have been removed on the server
2014-02-06 17:56:27 +01:00
Olivier Goffart
8f1494f8f2 Report an error if fetching the etag fails
Very important in case of renames, else, if the server did not perform
the rename, we may end up deleting the files
2014-02-06 17:56:27 +01:00
Daniel Molkentin
ccb45bfea6 Move code from HTTPCredentials to more generic locations
This is a preparation to make them usable from the Shibboleth
credentials class.
2014-02-06 13:02:01 +01:00
Olivier Goffart
f67d2e6418 Start all the jobs in parallel 2014-02-06 12:11:45 +01:00
Olivier Goffart
9a6275a5e3 use QNAM for the PUT
Not yet supported:
 - chunking
 - if the file changes while uploading
 - aborting
 - owncloudcmd  (because of the dependency to the account and the credidentials)
2014-02-06 11:50:16 +01:00
Olivier Goffart
2d9c0b6c31 Move CSyncThread in the main thread, and just do the neon jobs in a thread
It is important because then we can do assynchronious job that needs
QNAM in the main thread
2014-02-05 20:18:03 +01:00
Olivier Goffart
49562ca3b6 Remove unused members 2014-02-05 16:40:56 +01:00
Daniel Molkentin
33ab854922 SslErrorDialog: Ensure to run into a timeout while showing the dialog 2014-02-05 14:18:31 +01:00
Olivier Goffart
4ade023b96 Find another way to ignore the csync journal from the file watcher 2014-02-04 16:46:14 +01:00
Olivier Goffart
ec266054be Don't use QFileInfo to get the last modified time.
We can use the _modtime, since normaly we just set the the modtime
of the file to this time.

The problem is that Qt does follow symlinks (FILE_FLAG_OPEN_REPARSE_POINT)
And therefore was causing problem with symbolic links.

 Fixes #1307
2014-02-04 16:17:58 +01:00
Olivier Goffart
324214d072 fix the 'Sign In' menu entry 2014-02-04 15:06:17 +01:00
Klaas Freitag
ae5c9a29f6 Detect renames and removes in read only Shared directory, restore files.
This fixes bug #1386
2014-02-04 15:03:06 +01:00
Klaas Freitag
72a6b00919 Add some usage hints. 2014-02-04 15:03:06 +01:00
Olivier Goffart
e06cfe06fe FolderWatcher: ignore the csync journal 2014-02-04 14:57:25 +01:00
Olivier Goffart
d2a41342e1 Better error message when the write permission are missing in the local directory
Fixes #1394
2014-02-04 11:10:22 +01:00
Markus Goetz
6f960d406e Qt5: Use same path for config as Qt4 2014-02-04 10:02:28 +01:00
Markus Goetz
fdc8050e3d Folder Wizard: Re-evaluate after local folder changed 2014-02-03 18:19:25 +01:00
Markus Goetz
62f5b0ebac Folder Wizard: Make it more clear that we mean a remote folder 2014-02-03 17:27:54 +01:00
Klaas Freitag
971caca5e8 Implement change of the network throttling during a running sync run. 2014-02-02 12:51:19 +01:00
Daniel Molkentin
b3683976ca Updater: Fix corner cases related to failed auto-updates
- Don't re-download updates whom's auto-install has clearly failed before
- Don't signal newly available auto-upgrade if it has failed once
- Remove downloaded update after (un)successful auto-update
- Remove as many temporary keys after an (un)successful auto-update
2014-01-31 12:42:00 +01:00
Daniel Molkentin
4c6e0b5c07 SSL Button fixes
- Use OU as display name if CN is empty (often true for CA/interm. certs)
- Handle trust anchors in intermediate chain gracefully
2014-01-31 10:35:35 +01:00
Daniel Molkentin
dfa1dfaa7d AutoRaise SSLButton 2014-01-30 09:53:00 +01:00
Daniel Molkentin
74db151427 SSLButton: remove superflous extra argument 2014-01-30 09:53:00 +01:00
Olivier Goffart
6540f54512 Don't use QDateTime::toTime_t or QDateTime::fromTime_t
They only take an uint, and time_t is 64bit.
This breaks when date are before 1970

Fixes #1380
2014-01-29 11:47:13 +01:00
Daniel Molkentin
1aa050bea9 Add Tests, make Updater classes into a static lib 2014-01-29 10:43:21 +01:00
Daniel Molkentin
ca5f96e1bb Updater: More refactoring towards testability 2014-01-29 10:43:21 +01:00
Daniel Molkentin
d361bda922 Fix wording 2014-01-28 16:23:39 +01:00
Daniel Molkentin
62f4e813ee Settings: Allow opening links in updater label 2014-01-28 16:23:24 +01:00
Daniel Molkentin
505e0e9632 Fix build on Win32
regression introduced by ec9efd78
2014-01-28 15:49:19 +01:00
Olivier Goffart
50aa31d192 winEventFilter does not exist on Qt5 2014-01-28 15:30:58 +01:00
Daniel Molkentin
c8006f1163 Compile fix 2014-01-28 13:42:09 +01:00
Daniel Molkentin
637565cca1 Updater: Don't overwrite unannouned (newer) versions 2014-01-28 13:36:16 +01:00
Daniel Molkentin
a22884d164 Show message if the updater times out 2014-01-28 13:36:16 +01:00
Daniel Molkentin
58fd57fdcd Make update URL a compile time option 2014-01-28 13:36:16 +01:00
Daniel Molkentin
2bee51c101 Updater: Logic fix 2014-01-28 13:36:16 +01:00
Olivier Goffart
803cb5d015 fix signal slot connection 2014-01-28 12:45:41 +01:00
Olivier Goffart
e31000d759 Handle the fact that the user might cancel the password dialog
Add a new state of the account in which the credidentials are invalid,
but we are still trying to get the user enter his password.

Make sure that fetched() is ALWAYS emitted after we call fetch on the
credidentials, so we can know that the user pressed cancel. In that
case, go in the SignedOut state.

Fixes #1353
2014-01-28 11:49:09 +01:00
Daniel Molkentin
f408593d27 more build fixes 2014-01-28 11:01:05 +01:00
Daniel Molkentin
6d21058ca1 build fixes 2014-01-28 10:34:56 +01:00
Daniel Molkentin
1da94e5e2b Updater: More refactoring
- Renamed GenericUpdater -> OCUpdater
- Make more API Private
- Split up in classes to reduce complexity:
  - PassiveUpdateNotifier subclass for Linux
  - NSISUpdater for Windows
2014-01-28 10:01:23 +01:00
Daniel Molkentin
72ae44b8b1 Updater: relaunch Client after update 2014-01-27 13:04:27 +01:00
Olivier Goffart
e6be6fc695 Remove dead code 2014-01-27 12:44:46 +01:00
Olivier Goffart
18966bf061 Add missing include 2014-01-27 12:36:52 +01:00
Olivier Goffart
bf95509dbe Do not include "private" header from "public" header 2014-01-27 12:31:54 +01:00
Olivier Goffart
50b9a7b191 remove unused include from header file 2014-01-27 11:58:50 +01:00
Olivier Goffart
08c03d19b9 Only one quote should be enough
Should fix #1295
2014-01-24 20:28:17 +01:00
Klaas Freitag
5841cf4020 Add and remove watches for folders independent from sync dir.
Before it was just in case of download.
2014-01-23 13:23:27 +01:00
Klaas Freitag
e9e132c06c Make use of the new linux folder watcher. 2014-01-23 13:23:27 +01:00
Klaas Freitag
e3723fcfc2 Add a new folder watcher implementation for Linux. 2014-01-23 13:23:27 +01:00
Daniel Molkentin
8485a7fd30 Fix typo 2014-01-22 16:09:22 +01:00
Daniel Molkentin
129aef5beb Revert "Formatting hashes with : seems to be out of fashion"
This reverts commit c52e3a0732.
2014-01-22 00:00:34 +01:00
Daniel Molkentin
54c0c4057b Improve SSL detail display 2014-01-21 15:54:06 +01:00
Daniel Molkentin
c52e3a0732 Formatting hashes with : seems to be out of fashion 2014-01-21 15:25:51 +01:00
Klaas Freitag
699f6a62f8 Do not set sync-state to Prepare in setSyncEnabled().
This method is also called if the sync was disabled due to
network problems and such, ie. from the ETag change check.
In that case, we do not want to go to the Prepare state as
we not neccessarily want to have the folder synced now.

This fixes the problem that the folders were resynced way
to often which we had in master for a couple of days now.
2014-01-21 15:25:05 +01:00
Olivier Goffart
61f3b839ab Fix compilation in Qt5
Some Qt SSL function used to return QString now return a QStringList.

By having  QStringList(...).join(':')   the code will compile both
if the ... is a QString or a QStringList. So the code will still
compile in Qt4.
2014-01-21 15:09:12 +01:00
Olivier Goffart
29590fa00b Revert "Commented opening of files from the activity view as it does not work."
This reverts commit c50b0a995b.

This was only broken on windows and probabyl fixed by commit 23f52bcd
2014-01-21 13:01:05 +01:00
Olivier Goffart
0c33fc6e8a Do not block while launching the explorer on linux
Fixes #1338
2014-01-21 13:01:05 +01:00
Daniel Molkentin
c4c36d641b Remove garbage include 2014-01-21 12:34:51 +01:00
Klaas Freitag
4d8e65cfd0 Hide useless logging that indicates an error. 2014-01-21 12:10:49 +01:00
Daniel Molkentin
2370060ac5 Implement Certificate Information Widget
Currently used in status window. Before, there was no way to know
about the current certificate situation.

Fixes #44
2014-01-21 09:21:33 +01:00
Daniel Molkentin
562513d5a5 Propagator: Don't pass arbitrary strings as formating string
Not a security issue since this code was never in any release.
2014-01-20 17:22:29 +01:00
Daniel Molkentin
a2e9353296 Fix copy & paste problem in Ignore List Editor
Fixes #1355
2014-01-20 17:08:30 +01:00
Olivier Goffart
7f76fcff5e Do not account the size of deleted or renamed file in the progress
Fixes #1360
2014-01-20 17:00:28 +01:00
Olivier Goffart
0afbb264e0 cleanup mutex usage in CSyncThread
The only method which is used from another thread is abort().
So the only thing that needs protection is that function, and the
function which may race with.  Which are csync_request_abort which
should not race with csync_resume
2014-01-20 17:00:28 +01:00
Klaas Freitag
7bb7b1d73b Remove wipeAllJournals after rebase mistake. 2014-01-20 16:19:30 +01:00
Klaas Freitag
0eebc0e5be Add folder to schedule queue in setupFolders method.
This fixes bug #1352
2014-01-20 16:19:30 +01:00
Klaas Freitag
a6b0ccfa12 Remove explicit logging. 2014-01-20 16:19:30 +01:00
Klaas Freitag
ce077f97c6 Checks if the folder from map is still defined.
I saw a crash were a folder which was deleted was dereferenced later
in the Quota check slot. There the folder pointer returned from folder
map was zero.
2014-01-20 16:19:29 +01:00
Klaas Freitag
c705a6360d Rather removeFolder than addFolder to watcher (typo fix). 2014-01-20 16:19:29 +01:00
Olivier Goffart
be874e36da remove unused variable and functions 2014-01-20 15:10:53 +01:00
Olivier Goffart
3a9c485515 Fix crashwhile removing a folder
in a QMap, Accessing an entry that does not exists create the null entry
We should not use operator[] if we are not sure the folder indeed exists
2014-01-20 14:59:35 +01:00
Olivier Goffart
4df1d7d893 Remove unused variables 2014-01-20 14:59:23 +01:00
Olivier Goffart
bbf3a64c02 Fix crash.
toUtf8() returns a temporary QByteArray wuich is only valid until the
end of the statement (the next ';').  QByteArray::data() returns a
pointer to the QByteArray's data which is only valid if the QByteArray
is valid.
Keeping the char* is therefore wrong.
2014-01-20 14:24:20 +01:00
Olivier Goffart
316aade340 Merge branch 'csync_merge'
Conflicts:
	src/CMakeLists.txt
2014-01-20 13:27:33 +01:00
Olivier Goffart
6257ed6605 Make sure that the jobs have the Q_OBJECT macro.
so tr()  works there
2014-01-16 14:06:17 +01:00
Klaas Freitag
0455d96462 Fix untranslated error messages. 2014-01-16 13:04:57 +01:00
Klaas Freitag
98689d48f1 Check if configuration actually exists.
If not, set System Proxy as default.
2014-01-16 12:52:11 +01:00
Klaas Freitag
ec9efd7894 Make use of the new Proxy handling class. 2014-01-16 12:52:11 +01:00
Klaas Freitag
671100ce5c Add a class ClientProxy that handles proxy setting for Qt and csync. 2014-01-16 12:52:11 +01:00
Daniel Molkentin
4caa038de6 More sparkle fixes 2014-01-15 16:01:35 +01:00
Daniel Molkentin
f5dc2b3127 Compile on OS X 2014-01-15 12:45:43 +01:00
Olivier Goffart
c7227297af Make it compile with the merge of csync mirall 2014-01-15 12:20:03 +01:00
Daniel Molkentin
dc9f145a24 New Updater for Windows, passive notification on Linux, Sparkle on Mac 2014-01-15 11:09:31 +01:00
Klaas Freitag
55da857e59 A bit of refactoring, add useful names and set the alias properly.
The alias field is now set from the last component of the picked
local dir. Also some tooltips were added.
2014-01-14 17:40:42 +01:00
Klaas Freitag
aba1252e60 Remove inotify from cmake files. 2014-01-14 15:06:06 +01:00
Klaas Freitag
561f32cede License header cleanups. 2014-01-13 16:16:19 +01:00
Klaas Freitag
e0d8d93b50 Removed obsolete inotify class of folderwatcher. 2014-01-13 16:07:52 +01:00
Klaas Freitag
3d8505d7f4 Adopt mac folderwatcher to the new folderwatcher. 2014-01-13 16:00:41 +01:00
Klaas Freitag
18171862ac Unify folderwatcher private constructor. 2014-01-13 15:29:05 +01:00
Klaas Freitag
0e5858b1aa Add a pathIsIgnored method to the folderwatcher. 2014-01-13 15:29:05 +01:00
Klaas Freitag
5482ad1fd3 Remove event buffering from watcher, other refactoring. 2014-01-13 15:28:56 +01:00
Klaas Freitag
f9080c59ab Remove FolderWatcher from Folder and move to FolderMan. 2014-01-13 11:30:27 +01:00
Klaas Freitag
a12288ff21 Use folderwatcher based on Qt for Linux. 2014-01-13 11:30:27 +01:00
Klaas Freitag
d5b8d24f91 Add NoSymLink tag to the filter specification.
Should finally fix bug #1331
2014-01-10 09:09:22 +01:00
Klaas Freitag
9da06f10f6 Removed unused event interval getter/setter. 2014-01-10 09:09:22 +01:00
Olivier Goffart
ebee52ea8a Merge branch '1.5' 2014-01-09 12:32:08 +01:00
Klaas Freitag
e5804b5d12 Use a more Qt'ish folder recursing method, remove unused class.
Added unit test.
2014-01-08 14:36:42 +01:00
Klaas Freitag
e5d43c2b9c Add a utility function to write a random file. 2014-01-08 14:36:42 +01:00
Klaas Freitag
a522cebf0c Add missing switch case. 2014-01-08 14:36:42 +01:00
Olivier Goffart
1bc4089d95 Fix hiding temporary files on windows
tmpFileName is a relative path, and we need an absolute path to
pass to the function that hides the files
2014-01-08 13:33:16 +01:00
Olivier Goffart
b7b06a8795 Preserve the permission of the file we download
Related to issue #820
2014-01-08 13:17:35 +01:00
Olivier Goffart
4006e490f3 Do not write the removed folder on the DB
Should fix #1329
2014-01-08 12:51:42 +01:00
Klaas Freitag
273463daf4 Fix progress for the case that the source file changes during upload.
If the source file changes, the overall transmission size is not longer
correct. Fixed that by pushing the change over the previously calculated
size to csyncthread. Also set the mtime and size in the item object in
propagator to avoid doublicate uploading.
2014-01-07 15:42:21 +01:00
Klaas Freitag
7da84dbe44 Check on timer member is zero. 2014-01-07 10:30:41 +01:00
hefee
4e0496f74d respect XDG_CONFIG_HOME for getting user config dir.
Under linux the XDG Base Directory Specification define different
enviroment variables where to store what.
2013-12-31 02:10:44 +01:00
Sven Strickroth
8743be6f11 Close dialog if button was clicked not just pressed
Signed-off-by: Sven Strickroth <email@cs-ware.de>
2013-12-21 03:36:43 +01:00
Klaas Freitag
38cc564aed Show proper sync status in tray, incl. Pause status. 2013-12-20 15:16:52 +01:00
Klaas Freitag
c50b0a995b Commented opening of files from the activity view as it does not work.
See https://github.com/owncloud/mirall/issues/1295
2013-12-17 14:16:25 +01:00
Klaas Freitag
23f52bcd56 Fix open the explorer code. 2013-12-17 10:16:25 +01:00
Stefan Profanter
a93b9ee33a Fixed parent folder detection if sibling directory starts with same name
Since `cleanPath` removes all the trailing slashes (84bfbd4cb0:src/corelib/io/qdir.cpp#L2118) the check at line 138 wrongly assumed that

`D:\Test` is a parent folder of `D:\TestFoo`.
2013-12-15 16:22:53 +01:00
Daniel Molkentin
bef180a7bc Remove UTF-8 BOM, confuses old GCCs 2013-12-13 20:27:08 +01:00
Klaas Freitag
9bf15178f9 Fix button states in account widget 2013-12-12 16:38:45 +01:00
Daniel Molkentin
5b2c734fe5 Respect the override URL properly 2013-12-12 16:20:01 +01:00
Klaas Freitag
bc5f7d899a Save and restore activity view state.
Fixes bug #1256
2013-12-12 15:16:43 +01:00
Klaas Freitag
ec77ecfd0f Show error reason for blacklisted files in sync activity. 2013-12-12 12:21:24 +01:00
Klaas Freitag
09745c7f75 Fix: Allow to retry sync also for fatal err conditions.
Otherwise there would not  have been a chance to resync for example data
that was Forbidden because of a read only share.

Also removed some commented code.
2013-12-12 11:39:05 +01:00
Daniel Molkentin
9ffb33293c QuotaInfo: Keep polling quota if a previous request fails 2013-12-12 10:53:51 +01:00
Klaas Freitag
aa213eeafb Do not check for the ETag in case the HTTP request connected. 2013-12-11 13:51:38 +01:00
Daniel Molkentin
76a60e889c Start timer only after the last quota request was answered 2013-12-11 13:48:31 +01:00
Olivier Goffart
fa195eb1e8 Logger: Initialize all variables
To avoid valgrind warnings in owncloudcmd
2013-12-11 13:23:42 +01:00
Klaas Freitag
b68e721f05 Do not error out on ETag if the status klass is != 2. 2013-12-11 12:59:11 +01:00
Klaas Freitag
bbfb2f2a60 Do not force resync if status is SyncResult::Problem. 2013-12-11 12:59:11 +01:00
Olivier Goffart
bf309f83f4 Don't keep the temporary file if the transfer fails because of a wrong etag
The downloaded file is corrupted, remove it.
2013-12-11 12:48:11 +01:00
Daniel Molkentin
80d202c630 Fix build on Win32 2013-12-10 17:19:36 +01:00
Olivier Goffart
47308cdc01 define NE_LFS from cmake 2013-12-10 16:20:49 +01:00
Daniel Molkentin
03e9a06c7d Fix build 2013-12-10 16:07:49 +01:00
Thomas Müller
370cf45357 fixing add button behavior in single folder mode 2013-12-10 15:59:59 +01:00
Thomas Müller
638b62a3ae prevent crash on 'add folder' 2013-12-10 15:59:59 +01:00
Klaas Freitag
6707e93f31 Add NE_LFS define for correct size of ne_off_t 2013-12-10 15:28:02 +01:00
Olivier Goffart
0360babe02 usleep is not working on windows, use QThread::usleep
Shoud fix #1082
2013-12-10 14:03:01 +01:00
Klaas Freitag
a743f804f5 Ignore another sqlite journal tmp name that shows up on win32. 2013-12-10 13:19:57 +01:00
Olivier Goffart
b6e4575dea Do not initialize all the application if another instance is running
This fixes a crash becasue we were constructing the systemtray and then
destroying it too early before the systemtray could initilize itself.
(This work around a bug in QSystemTray which crashes if it is destroyed
before it is registered to the X11 server)
2013-12-10 12:48:59 +01:00
hefee
f8478ac27b Fixing typos 2013-12-09 20:17:56 +01:00
Olivier Goffart
bb2f221edf Fix broken slot connection
The slot was renamed.
2013-12-09 19:19:49 +01:00
Daniel Molkentin
1291ffaf02 Small adjustments to the last commit 2013-12-09 17:16:42 +01:00
Olivier Goffart
89d1e2d924 When reconfiguring, we need to clear the _currentSyncFolder
Else, if we reconfigure when the folder is syncing, it may be impossible to
sync again.
This happens for example when changing the password when the folder is
syncing
2013-12-09 17:16:04 +01:00
Klaas Freitag
857ef33056 Use proper email in license header. 2013-12-09 17:02:17 +01:00
Daniel Molkentin
f5e8efd435 Add build number into versioning scheme
This is an enabler to improve update experience
2013-12-09 16:39:13 +01:00
Olivier Goffart
e5edb8e2c7 Fix opening the explorer with a selected file on windows.
Should Fix #1249
2013-12-09 16:13:48 +01:00
Klaas Freitag
fc986b0ab8 If item is a directory, remove its contents from the database as well.
Fixes bug #1257
2013-12-06 16:38:43 +01:00
Klaas Freitag
c5e435f9bd Let recursive removal also remove the top dir. 2013-12-06 16:37:30 +01:00
Klaas Freitag
599451d250 Unchanged files still count as files. 2013-12-06 16:37:01 +01:00
Klaas Freitag
af78f1996c Set action string as tooltip 2013-12-06 15:50:14 +01:00
Klaas Freitag
41d5445980 Display rename-target in sync protocol action column. 2013-12-06 15:07:25 +01:00
Klaas Freitag
e5afd8b901 Maintain the file type correctly. 2013-12-06 14:11:51 +01:00
Klaas Freitag
6fad20d5fc Show local MOVE operations only for top level directory instead for all
files.

This fixes bug mirall#1240
2013-12-06 12:32:26 +01:00
Daniel Molkentin
dff17ec08e A different user constitutes a different account
Fixes #1231
2013-12-05 19:03:40 +01:00
Olivier Goffart
fa9d9c9909 Maybe we need to destroy the decompress context before the request.
Possibly fix the issue #1229
2013-12-05 16:51:39 +01:00
Daniel Molkentin
a0d1dc8807 Avoid horizontal scrollbar
...by intproducing more tooltips and set eliding to center elide
You can still force a scrollbar, but it's not there by default
and the center eliding makes pathes more meaningful

Fixes #1213
2013-12-05 16:42:07 +01:00
Klaas Freitag
9e2f6c0258 Close the sync journal if a folder gets removed.
This fixes bug #1252
2013-12-05 16:06:46 +01:00
Daniel Molkentin
ee2efbb071 Fix for c3dc84c58f.
This resulted in the wizard not coming up the second time around
because it wasn't destructed properly.

Also fix a comment.
2013-12-05 16:00:32 +01:00
Daniel Molkentin
c3dc84c58f Don't close setup wizard when the initial sync run is started
Fixes regression over 1.4.2
2013-12-04 20:26:18 +01:00
Klaas Freitag
861de89e9c Add translatable error messages for individual file errors.
The error messages coming out of the csync updater and were
string based before which could not be translated.
2013-12-04 12:19:38 +01:00
Klaas Freitag
a6dfc0a83e Refactoring, pick proper method name. 2013-12-04 11:36:24 +01:00
Klaas Freitag
859f776440 Set proper enable state of blacklist button after the dialog was opened.
Also set proper tooltips.
2013-12-04 11:32:46 +01:00
Klaas Freitag
4b7f75059a Fixed check for SQL command successs. 2013-12-04 10:31:05 +01:00
Klaas Freitag
b3620e320b Avoid a comparison warning on win32 2013-12-03 17:09:57 +01:00
Klaas Freitag
883576cb95 Fix Win32 move file operation. 2013-12-03 17:07:42 +01:00
Daniel Molkentin
99fc570267 Replace Q_OS_WIN32 by Q_OS_WIN
Fixes #1238
2013-12-03 16:23:49 +01:00
Olivier Goffart
1f5c4bde14 Fix windows rename of temporary files 2013-12-03 16:10:44 +01:00
Klaas Freitag
046d180d2f Rather count the blacklist items in the database.
Use database functions to count the entries rather than trying to
compute it from the progress items the widget got.
2013-12-03 14:48:49 +01:00