Commit graph

1951 commits

Author SHA1 Message Date
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
Klaas Freitag
278e76b774 Add blackListEntryCount method. 2013-12-03 14:48:49 +01:00
Olivier Goffart
09d850bfaa When the temporary file is the same size as the file we would download, just keep it
Don't download the file if the temporary file is complete.

else, we get error from server: Requested Range not satisfiable
2013-12-03 14:44:04 +01:00
Klaas Freitag
f0a6047ecf Add a button to acitivity view to clean the blacklist. 2013-12-03 14:04:01 +01:00
Klaas Freitag
e8ffb17b3b Add a slot to wipe the folder's blacklist. 2013-12-03 14:04:01 +01:00
Klaas Freitag
09d4fa2127 Fixed wording, do not expose the term blacklist to users. 2013-12-03 14:04:01 +01:00
Olivier Goffart
de5161137f remove unneeded file 2013-12-03 13:11:41 +01:00
Klaas Freitag
1abfd4ba44 Fixed wording, removed the term "problem". 2013-12-03 12:31:28 +01:00
Klaas Freitag
ecf45856e1 Add missing call to CloseHandle on the win32 platform.
This fixes bug mirall#1236 and also mirall#1237
Also some minor cleanups.
2013-12-03 10:08:17 +01:00
Klaas Freitag
c03b2bbc87 Make unblacklisting depending on Up or Download
Compare modtime in case of uploading and ETag in case of downloading
as they are the correct indicators.
2013-11-29 16:16:04 +01:00
Klaas Freitag
2f708c0877 Move checkAccountExists out of gui class. 2013-11-29 16:16:04 +01:00
Olivier Goffart
58eb000163 Make the "details" manu entry work
Fix #1214
2013-11-29 11:18:59 +01:00
Olivier Goffart
f5f56e45c0 Fix pausing one of the folder pauses all foder after it while restarting. 2013-11-29 10:57:34 +01:00
Klaas Freitag
951ac79a68 Destinguish between rename and move in wording. 2013-11-28 10:58:04 +01:00
Olivier Goffart
ef8fe11f5a Do not write the directory etag in the database in case of soft error
Else we won't retry next time as we think nothing has changed.
2013-11-28 10:01:30 +01:00
Olivier Goffart
30db533cea Stop iterating files when aborting. 2013-11-28 10:01:30 +01:00
Olivier Goffart
99eeaa0db5 no need to set twice the error string
done() is already taking care of that
2013-11-28 10:01:30 +01:00
Klaas Freitag
80a01ecff3 Use the activity icon in settings dialog. 2013-11-28 09:47:49 +01:00
Klaas Freitag
0d85810c23 Change tab name in settingsdialog to Activity rather than Status. 2013-11-28 09:44:09 +01:00
Klaas Freitag
23007613a9 Fix progress bar in new propagator. 2013-11-27 16:48:16 +01:00
Daniel Molkentin
46a403eb02 Report connection errors explicitly on explicit sign in attempts
Implicit connection attempts fail silently. This is roughly what
users expect from e.g. mail clients.

Fixes #1205.
2013-11-27 14:15:56 +01:00
Daniel Molkentin
e719e80409 ConnectionValidator: Account::setState no longer takes a bool
This makes the client come up with the correct state when the
initial connect fails.
2013-11-27 14:12:30 +01:00
Daniel Molkentin
310278f580 Account: Swap connected and disconnected state
Also, avoid full integer enumeration
2013-11-27 14:11:10 +01:00
Klaas Freitag
59072a81f1 Put detailed sync status widget into ButtonGroup for common style. 2013-11-26 14:27:32 +01:00
Klaas Freitag
d55bffb319 Removed not longer needed Info button.
The detailed sync status is now in the same dialog in another tab.
2013-11-26 14:15:37 +01:00
Klaas Freitag
232cbc45b5 Simplify progress and error signals again.
Now handle everything through the progress signal and let the errors
be progressed in the done slot.

Remove unused code, fix sorting of the list, more efficiency.

This fixes #916
2013-11-26 14:02:11 +01:00
Klaas Freitag
a88d45bff4 Comment some unused code. 2013-11-26 14:02:11 +01:00
Klaas Freitag
090e474d70 Add a couple of missing progress signals. 2013-11-26 14:02:11 +01:00
Klaas Freitag
4f7546768b Do not blacklist Softerrors. 2013-11-26 14:02:11 +01:00
Klaas Freitag
7a3c086be2 Display a proper error message for missing sync directory on server.
this fixes bug mirall#1149
2013-11-26 14:02:11 +01:00
Olivier Goffart
5c8b6ed902 Fix Remove -gzip from etag
Remove it from both "foo"-gzip  and "foo-gzip"

See issue #1195
2013-11-26 12:10:52 +01:00
pascalBokBok
489cc8aa29 Remove spammy "sync starting" notification on every program start. 2013-11-26 10:01:36 +01:00
Daniel Molkentin
0d85dcdd9e Toggle Settings window when clicking on the icon
This restores the old behavior for every DE but OS X and Ubuntu Unity
(which respond to all clicks by opening the menu).

Discussed in #896
2013-11-26 03:15:03 +01:00
Daniel Molkentin
81e47b0896 Folder wizard: sanitize error detection
* Wrap text properly
* Format multiple warnings as bullet points
* Use 'Folder' instead of 'Directory' everywhere
* Fix false positives when checking if one directory contains another
* Fix logic errors in target folder warning detection

Fixes #1201
2013-11-26 02:03:00 +01:00
Daniel Molkentin
ef0c7348ad Account Settings: Fix label 2013-11-26 00:04:50 +01:00
Daniel Molkentin
050bb55f1e Wizard: Do not start from scratch if the initial folder is non-default
Before, the folder was initialized to "ownCloud" in any case,
which lead the wizard to conclude it had to sync everything anew,
because the location moved -- even if the folder location was manually
corrected.

Fixes parts of #1172
2013-11-26 00:04:33 +01:00
Markus Goetz
fa715ce135 Propagator: Open download file as Unbuffered 2013-11-25 19:25:19 +01:00
Markus Goetz
911e0bdd6e Propagator: Check write errors when downloading 2013-11-25 19:25:19 +01:00
Olivier Goffart
fa0f773fcb Separate the case of file changing durng upload in the chunk or non chunk case.
If the file is changed between chunk, it is easy and we can just retry as the
file has not been changed on the server.
But if the file is changed after it has been updated on the server, we must still
update the database with the etag. (and possibly delete the partial file)

Relates to issue #1002
2013-11-25 19:16:54 +01:00
Markus Goetz
ac8296fb94 Propagator: Check E-Tag when resuming
Should fix #756
2013-11-25 19:01:04 +01:00
Daniel Molkentin
f47ce2fea6 Account Settings: Set initial button state correctly
Fixes #1185
2013-11-25 17:56:09 +01:00
Klaas Freitag
33ff6b3934 Even if problems occured show the Ok-Icon in the setup dialog.
Fixes bug #942.
2013-11-25 17:49:59 +01:00
Olivier Goffart
ca3d8ab193 Add one case of missing -gzip removal 2013-11-25 17:48:57 +01:00
Daniel Molkentin
d85009a2e9 Account Settings: fix connect error
Fixes #1198
2013-11-25 17:34:40 +01:00
Markus Goetz
72d2ac09e3 Propagator: Don't ignore error if no HTTP error code 2013-11-25 16:37:48 +01:00
Olivier Goffart
6b7da798b8 Remove -gzip from Etag
Fix #1195
2013-11-25 16:30:13 +01:00
Klaas Freitag
2e4043b498 Show proper error message and icon according to error class. 2013-11-25 16:18:07 +01:00
Klaas Freitag
dc29046d61 Add new progressProblem signal and slots.
Now the sync problems are handled differently than the sync progress
to ease error message handling and stuff.
2013-11-25 16:18:07 +01:00
Klaas Freitag
0c6dca25c4 Register meta type for SyncProblem 2013-11-25 16:18:07 +01:00
Klaas Freitag
1a3f246c46 Add new Error Types to progress: Soft, Normal, Fatal. 2013-11-25 16:18:07 +01:00
Daniel Molkentin
ad6c42b031 Wizard: let us handle/ignore credential failures 2013-11-25 15:50:19 +01:00
Daniel Molkentin
9ddedf81ac Cleanup: "Use QMutexLocker" 2013-11-25 15:34:17 +01:00
Daniel Molkentin
685c13dead Distiguish "Signed out" from "Disconnected" 2013-11-25 15:34:17 +01:00
Daniel Molkentin
4e22fff427 Introduce online/offline state, accessible via GUI 2013-11-25 15:34:16 +01:00
Daniel Molkentin
f554cca3d6 Fix initial state of quota info class. 2013-11-25 15:34:16 +01:00
Daniel Molkentin
67132326d2 Prefix tooltips with app name 2013-11-25 15:34:16 +01:00
Daniel Molkentin
ea2b5fb29c Query credentials when needed. Put the account offline if user aborts.
This is only implemented for HTTP auth. Shibboleth still does its own thing.
2013-11-25 15:34:16 +01:00
Daniel Molkentin
0a2861a731 Disable quota polling when default account does not exist or is offline 2013-11-25 15:34:16 +01:00
Olivier Goffart
6f17131e3c Fix mutex usage in the journal
All public function must lock the mutex. And therefore none of the journal
function may call public function because the mutex is already locked.

So have a public commit that lock the mutex,  and a private  commitInternal
that assume the mutex is locked
2013-11-25 15:11:37 +01:00
Olivier Goffart
ca3885de2a Fix some SQL error and warning
Such as:
 Error opening the db:  "Driver not loaded Driver not loaded"
or
 QSqlDatabasePrivate::removeDatabase: connection '...' is still in use, all queries will cease to wor

We need to clear the QSqlDatabase _db handle before calling removeDatabase.
And we also need to give a different name to different folder database, just to be sure
2013-11-25 15:07:58 +01:00
Klaas Freitag
fd1552f7a0 Handle SoftError and show blacklisted files. 2013-11-24 22:27:11 +01:00
Klaas Freitag
055a8d7e74 Do not display error messages if user aborts the sync run. 2013-11-24 22:26:50 +01:00
Klaas Freitag
1964e60eb0 Do not show an error message if user aborted. Also CSYNC_STATUS fixes. 2013-11-24 22:21:29 +01:00
Klaas Freitag
11acfde55a Refresh the Protocol widget when the dialog is raised. 2013-11-24 22:20:43 +01:00
Klaas Freitag
ecb2444923 Handle changing source file in upload correctly.
Delete the file on the server if the source file is new, but
the source did not arrive completely within a timespan.
2013-11-22 19:45:26 +01:00
Klaas Freitag
65bd4be16e Make sure all queries are initialized on our database object.
Since we use a database with the non default name, we need to do that,
otherwise the query is initialized on the default db which is not open
in our case.
2013-11-22 15:37:35 +01:00
Klaas Freitag
8d2950f66c Enable the overall file count in progress again. 2013-11-21 11:37:47 +01:00
Klaas Freitag
55e82ee4c1 Made transaction management a bit more transparent. Some fixes. 2013-11-21 11:13:58 +01:00
Klaas Freitag
aa17be40cc Some database code cleanups. 2013-11-20 18:19:14 +01:00
Klaas Freitag
97c661c909 Cleanups 2013-11-20 14:59:58 +01:00
Klaas Freitag
2767e7084a Minor cleanups. 2013-11-20 14:27:44 +01:00
Klaas Freitag
5900b1ad25 Add blacklisting for files with error conditions. 2013-11-20 14:27:44 +01:00
Klaas Freitag
20b9ae757d Add a http status code varialbe to the sync item object. 2013-11-20 14:27:44 +01:00
Klaas Freitag
aff2dd9f44 The IGNORE statement is handled further down the code. 2013-11-20 14:27:44 +01:00
Klaas Freitag
0f6dd8748f Fixed some header wording. 2013-11-20 14:27:44 +01:00
Klaas Freitag
a342f63fdf Changed wording: Replaced Protocol against Status. 2013-11-20 14:27:44 +01:00
Markus Goetz
e551e92e13 Downloads: Ignore file if no ETag was sent
Fixes part of #970
2013-11-19 12:44:25 +01:00
Markus Goetz
b98d97a96d SyncJournalDb: Fix warnings
I got those warnings for the latter sync runs:
11-19 10:58:15:997 QSqlDatabasePrivate::removeDatabase: connection 'qt_sql_default_connection' is still in use, all queries will cease to work.
11-19 10:58:15:997 QSqlDatabasePrivate::addDatabase: duplicate connection name 'qt_sql_default_connection', old connection removed.
2013-11-19 11:28:08 +01:00
Klaas Freitag
f30ac49264 Cached more queries, used safe QSqlQuery pattern 2013-11-18 13:02:09 +01:00
Klaas Freitag
49ba252fff Database initialize code cleanup.
If the QSqlQuery class is called with a query in the constructor, the query
is executed immediately. In fact, we executed each query twice before.
Later on we might want to implement a wrapper clas around the query.
2013-11-18 10:02:33 +01:00
Klaas Freitag
69269f8f75 Use transactions to speed up database access. 2013-11-18 10:02:32 +01:00
Klaas Freitag
e73730cb94 Close database after retrieval of file record count.
As the csync updater opens the database itself, it is cleaner to close
the db before and open it again after csync has finished.
Added a close method to the journal class.
2013-11-18 10:02:32 +01:00
Klaas Freitag
098e04c13f Set PRAGMA synchronous to NORMAL 2013-11-18 10:02:32 +01:00
Klaas Freitag
b0f6628584 Moved implementation of start() to cpp file. 2013-11-18 10:02:32 +01:00
Klaas Freitag
42f6867329 Add some useful logging. 2013-11-18 10:02:32 +01:00
Daniel Molkentin
0a9a3d8f04 Cleanup in folderman 2013-11-18 09:37:09 +01:00
Daniel Molkentin
ec850e83b9 Folders need to be setup before initializing the GUI
This fixes the incomplete context menu
2013-11-18 09:37:09 +01:00
Markus Goetz
08665d6ac2 Settings: Don't specify encoding
QSettings automatically does escaping. When UTF-8 was set, I
got all kind of problems with the QByteArray for the geometry
and the umlaut in my name for the proxy user.
2013-11-18 09:30:42 +01:00
Markus Goetz
4194a078d5 Revert "set utf8 for the central settings file"
This reverts commit 6758c89130.
2013-11-15 15:45:21 +01:00
Daniel Molkentin
6758c89130 set utf8 for the central settings file 2013-11-15 14:43:48 +01:00
Olivier Goffart
c15a1eedd1 Only update the db for ETAG if the etag has changed for directories 2013-11-15 13:53:18 +01:00
Klaas Freitag
bf6e1f10ce Prepare the queries after the database was migrated. 2013-11-15 11:21:27 +01:00
Klaas Freitag
c22f8a47f1 Initialise values properly, avoid warning. 2013-11-15 10:32:13 +01:00
Klaas Freitag
858facb5e0 Use precompiled database statements. 2013-11-15 10:32:13 +01:00
Olivier Goffart
b3972a5ba8 Do not fetch the file id in the propagator with a HEAD
Normally, the fileid comes with the PUT or the GET.
If it did not comes with the PUT, it means the server do not support
fileid,  we should not query it with a useless HEAD.

Also, in case the fileid changes (which it should not)  update anyway
to the new fileid in the db
2013-11-15 10:18:19 +01:00
Daniel Molkentin
7ba8983f0a Change all Network Jobs to use start() 2013-11-14 19:20:19 +01:00
Markus Goetz
767ec4ed59 Wizard: Support redirects again 2013-11-14 17:54:38 +01:00
Markus Goetz
b12b8c981d Wizard: Also reset timeout on forwards 2013-11-14 17:23:56 +01:00
Markus Goetz
b499a62593 Wizard: Timeout handling for CheckServerJob 2013-11-14 17:23:56 +01:00
Markus Goetz
fa0a2764a4 Fix changing URL in wizard 2013-11-14 17:23:56 +01:00
Markus Goetz
a537a98f03 Tray menu: Populate at start 2013-11-14 17:23:56 +01:00
Olivier Goffart
e8e27b61f6 Revert the changes that fetch the file id in the propagator.
We don't want to fetch the file id in the propagator.

Revert "Put item member variable to base class."
This reverts commit f7aa2aa348.

Revert "Add isValidFileId and getFileIdPropget methods."
This reverts commit ccd254abba.
2013-11-14 14:59:03 +01:00
Klaas Freitag
f7aa2aa348 Put item member variable to base class. 2013-11-14 11:37:32 +01:00
Klaas Freitag
ccd254abba Add isValidFileId and getFileIdPropget methods. 2013-11-14 11:37:08 +01:00
Daniel Molkentin
8f61cc4041 Hint the OS to not show [?] in Wizards and Dialogs
Fixes #1156
2013-11-13 20:12:56 +01:00
Daniel Molkentin
21c9fc2d35 Cleanup 2013-11-13 19:11:46 +01:00
Daniel Molkentin
171572e400 Remember paused state throughout application restarts
Fixes #823
2013-11-13 18:58:35 +01:00
Olivier Goffart
52e01b39d6 Adapt to csync 'md5'->'etag' change 2013-11-13 14:28:41 +01:00
Daniel Molkentin
af1dcfd179 Compile fix 2013-11-13 14:24:02 +01:00
Daniel Molkentin
233a6908dd Partial revert "Compile with Qt5"
This reverts commit 878ae56a71.
2013-11-13 14:19:01 +01:00
Daniel Molkentin
ae83c12f05 Fix compiler warning 2013-11-13 14:19:01 +01:00
Daniel Molkentin
878ae56a71 Compile with Qt5 2013-11-13 14:00:12 +01:00
Daniel Molkentin
ca79d3b437 Merge remote-tracking branch 'origin/master' into account_refactoring 2013-11-13 13:55:58 +01:00
Klaas Freitag
14081a197b Call ne_sock_init and ne_sock_exit to initialize neons SSL stack.
See https://github.com/owncloud/mirall/issues/1115 for more details on
why that is done here now.
2013-11-11 17:47:24 +01:00
Daniel Molkentin
9fe2549938 Add user info if the auth backends provides it 2013-11-11 16:57:15 +01:00
Klaas Freitag
e0a50d4bb9 PostSyncCleanup added: Remove superfluous entries from database after
sync.
2013-11-11 16:45:40 +01:00
Daniel Molkentin
ad1c1f4130 Remove legacy code 2013-11-11 15:36:49 +01:00
Daniel Molkentin
406ed5a0c0 Make new folder wizard work again 2013-11-11 15:20:07 +01:00
Daniel Molkentin
d5081f4328 Fix logic 2013-11-11 14:02:54 +01:00
Daniel Molkentin
95d7afb0d0 cleanups 2013-11-11 10:57:33 +01:00
Klaas Freitag
2b2987d962 Make sure to rebuild the recent changes menu. 2013-11-11 10:06:14 +01:00
Klaas Freitag
2eb77445be Add rename actions to progress dispatching.
With that fix rename operations are shown as such in the progress
window and in bubble help etc.
2013-11-08 16:21:59 +01:00
Daniel Molkentin
12b1b38351 Fix connect 2013-11-08 14:02:13 +01:00
Daniel Molkentin
b0abb6362a Don't set the content header length
This breaks POSTS and is not needed in QNAM, since QNAM
does this itself internally.
2013-11-08 14:01:56 +01:00
Klaas Freitag
a458ffd472 Add missing return in error case. 2013-11-08 12:56:54 +01:00
Daniel Molkentin
60b6f520e7 Make Shibboleth browser aware of Accounts
Needed for SSL error handling. It's also more consistent.
2013-11-07 18:47:38 +01:00
Daniel Molkentin
8d0d5b4077 Make redirects work 2013-11-07 18:46:57 +01:00
Daniel Molkentin
5c9a6afb82 Fix crash when opening settings without a valid account 2013-11-07 18:46:28 +01:00
Klaas Freitag
162acc1cc2 Fix conflict file handling, create a proper conflict file name.
Before this fix, the conflict file name was set in the file name
variable which lead to the problem that the subsequent rename of
the temp file to the final final filename was moving the temp file on
the conflict file. No final file was there.
2013-11-07 16:53:22 +01:00
Daniel Molkentin
33c3d2a7d0 Wizard: Initialize account credentials.
Required to be able to readily retrieve the user name later on
2013-11-07 15:24:49 +01:00
Daniel Molkentin
1238ab4f69 fix broken connect() statement 2013-11-07 12:50:55 +01:00
Daniel Molkentin
a42ff5a07c Show floating point prec. in account settings, too 2013-11-07 12:50:39 +01:00
Daniel Molkentin
aa4b6bd4ea Readd "online" notion as a state in account.
This gets updated by the ConnectionValidator. Not sure if that's
the best choice, but it mimmicks the old behavior the closest.
2013-11-07 12:22:17 +01:00
Daniel Molkentin
478ba9c5ef Fix approved SSL certificates being forgotten 2013-11-07 12:04:45 +01:00
Daniel Molkentin
bd46ad56fc Add new quotainfo class 2013-11-07 10:14:38 +01:00
Daniel Molkentin
bde5e86c50 Reformatting fixes 2013-11-07 10:14:25 +01:00
Daniel Molkentin
ec0f01fd7c Ensure an SSL Error Handler is always available 2013-11-07 10:14:12 +01:00
Klaas Freitag
fe4c1cc35a Remove straycat code from mirall. 2013-11-06 14:20:44 +01:00
Daniel Molkentin
3af622d535 Make quota display work 2013-11-05 18:15:47 +01:00
Klaas Freitag
ee4cbf52dc Remove straycats collected in the reconcile phase from journal. 2013-11-05 17:53:01 +01:00
Klaas Freitag
5cd2be058d Fix local rename. 2013-11-05 17:50:09 +01:00
Klaas Freitag
3a21edca2b Keep originalFile member as QString rather than C string.
This avoids encoding problems with interesting file names.
2013-11-05 17:48:51 +01:00
Klaas Freitag
c6a926842a Fix recursivley flag misinterpretation. 2013-11-05 17:47:51 +01:00
Daniel Molkentin
440b5164ad Build fix 2013-11-04 16:41:59 +01:00
Daniel Molkentin
cc5f17a7d2 Merge remote-tracking branch 'origin/master' into account_refactoring
Conflicts:
	src/mirall/accountsettings.cpp
	src/mirall/folder.cpp
2013-11-04 16:38:55 +01:00
Daniel Molkentin
85d5b82811 - Make saving/restoring accounts work.
- Prepare for fetching quota
2013-11-04 16:36:23 +01:00
Olivier Goffart
f0a1ac4346 Fix syncing folder with nothing in it
Do the start after connecting, as the finish may be imediate if there
is nothing to do.
2013-10-31 12:11:56 +01:00
Olivier Goffart
bdc39f9cc2 Allow folder that are prefix of another 2013-10-31 11:41:56 +01:00
Olivier Goffart
d3ae2f42a7 Reset the proxy module property at every sync
This is required for the fix for #713
Since the module properties are shared in global variables shared by
every folders, removing another folder may clean the proxy settings.
So we need to restore them at every sync
2013-10-31 11:39:43 +01:00
Olivier Goffart
df39ab0b2f Don't leak the system tray 2013-10-31 10:52:19 +01:00
Olivier Goffart
28833ee5ac Fix crash when removing folder while syncing.
We need to set _thread to 0 after destoying it
2013-10-31 10:51:45 +01:00
Klaas Freitag
c66a1d1895 Removed unused code from LocalRename 2013-10-30 18:14:33 +01:00
Klaas Freitag
cdee0dc1cf Added a PropagateLocalRename job to do local renames. 2013-10-30 17:37:34 +01:00
Klaas Freitag
a43c5fcfe8 Fix header name according to changes on server master. 2013-10-30 17:37:34 +01:00
Olivier Goffart
5c67f39476 Ignore error 404 on DELETE
This may happen if we have stale entries in the database
2013-10-30 17:33:06 +01:00
Olivier Goffart
fb47657b1f Make F6 in the account config sync the selected folder, for debugging purposes
Issue #409
2013-10-30 16:58:08 +01:00
Olivier Goffart
76d46af4b7 Revert "Implement a sync now button"
Actually, after discussion with the team, we decided this button is a bad idea

This reverts commit b56fcd8ebd.
2013-10-30 16:48:28 +01:00
Daniel Molkentin
86af2848dd Merge remote-tracking branch 'origin/master' into account_refactoring
Conflicts:
	src/mirall/accountsettings.cpp
2013-10-30 16:37:49 +01:00
Daniel Molkentin
4ca310b63b Remove ownCloudInfo for good 2013-10-30 16:33:15 +01:00
Daniel Molkentin
14c2ff44f3 More porting to Account class
- Finish port of owncloud setup wizard to Account
- Deprive MirallConfigFile of the customHandle
2013-10-30 16:31:47 +01:00
Olivier Goffart
b56fcd8ebd Implement a sync now button
The button is in the account config, next to the "pause/resume" button

Fixes #409
2013-10-30 16:27:00 +01:00
Olivier Goffart
e38d6d974b Replace _Button* with _button
Identifiers starting with underscore and uppercase are reserved in C++.
2013-10-30 15:52:30 +01:00
Olivier Goffart
9500c5ffab Do not change the instruction anymore when we finish an item
The status is in the status.  Keep the original instruction so the
UI knows what to display for eath item
2013-10-30 10:46:05 +01:00
Olivier Goffart
b079cedbf5 Use the status instead of the instruction for finished items 2013-10-30 10:44:41 +01:00
Olivier Goffart
6e088e28f5 Adjust the mtime in case of fake conflicts
"Fake conflicts" happen when the etag changes on the server, and the
mtime changes on the client,  but the actual file is still exactly
the same.  We correctly detect them as false conflict and we do not
generate the conflict file for them.
But we should also update the local mtime to the server mtime so future
sync don't get confused.
2013-10-29 12:23:51 +01:00
Olivier Goffart
01e2743bae Always download the conflicted files.
Conflicts have a direction==NONE. And they need to be downloaded, not uploaded
2013-10-29 12:13:30 +01:00
Olivier Goffart
75ffa787a6 emit the EndDownload progress at the right place.
It was put in rename instead of download
2013-10-29 12:13:30 +01:00
Olivier Goffart
4ad9f34807 Save the UPDATED files in the database
Those are files that were detected as "resolved conflict".
They should have been a conflict because they both were new, or both
had their local mtime or remote etag modified, but the size and mtime
is the same on the server.  This typically happen when the database is removed.
Nothing will be done for those file, but we still need to update the database.
2013-10-29 12:13:30 +01:00
Daniel Molkentin
a91799a11c Make the setup wizard compile again
- introduces more jobs
- needs more cleaning up
2013-10-28 20:01:59 +01:00
Olivier Goffart
adc47948a5 Add a comment explaining OwncloudPropagator::start 2013-10-28 17:00:27 +01:00
Olivier Goffart
6e886e28e9 Merge branch 'propagator-job'
Conflicts:
	src/mirall/owncloudpropagator.cpp
2013-10-28 16:26:25 +01:00
Olivier Goffart
84a40dcb59 Refactor the new propagator in jobs
This makes the code (IMHO) more easy to understand, and will allow
even more easy parallelism
2013-10-28 15:58:35 +01:00
Klaas Freitag
68ba99b7f0 Fixed fileID parsing and improved logging. 2013-10-28 15:28:34 +01:00
Klaas Freitag
2fefc428a8 Write file Id to journal table.
Since this requires a change of existing sync journals, database migration
code was added.
2013-10-25 13:31:00 +02:00
Klaas Freitag
17220f2604 Query file Id from server if unknown. 2013-10-25 13:31:00 +02:00
Klaas Freitag
7a68961b25 Add handling for the file_id data to the sync items. 2013-10-25 13:31:00 +02:00
Daniel Molkentin
aa2baa45fb Cleanups, ownership for ssl error handler 2013-10-24 12:55:26 +02:00
Daniel Molkentin
eda5feb82c Bring back proper ssl handling 2013-10-24 00:29:08 +02:00
Daniel Molkentin
d2b445c80c Basic port, misses wizard 2013-10-23 14:48:53 +02:00
hefee
a927caf2b0 Fixing Utility::platform for all platforms 2013-10-23 00:59:29 +02:00
Daniel Molkentin
29c846a764 WIP: Dissolve owncloudinfo class 2013-10-21 21:42:52 +02:00
Daniel Molkentin
a91ba0fd48 WIP: Move network tasks from ownCloudInfo into Job classes. 2013-10-18 12:24:29 +02:00
Daniel Molkentin
a25d55a265 Add QtJson to 3rdparty, use it in ownCloudInfo 2013-10-18 02:00:19 +02:00
Olivier Goffart
0efbfb10aa Fix MOVE of directory.
Remove the right entry from the database (i.e: the original file name)
Fetch the etags of the sub entries
2013-10-17 13:06:39 +02:00
Olivier Goffart
cb8006b89f Fix comments of the propagation step.
Also, don't mark item as removed if the instruction is not REMOVE
2013-10-17 12:09:44 +02:00
Klaas Freitag
660469cbf5 Do not propagate a move of the Shared folder. 2013-10-17 10:48:31 +02:00
Daniel Molkentin
a06e551469 Merge pull request #1103 from Absolight/freebsd-port
Patches for FreeBSD
2013-10-16 08:52:46 -07:00
Olivier Goffart
746b86a1dd Save the progress db once a chunk has been upload
Allow to resume when we cancel the sync
2013-10-16 16:47:24 +02:00
Mathieu Arnold
1c594b6a8d FreeBSD doesn't have statvfs64, like MacOS X. 2013-10-16 15:57:59 +02:00
Olivier Goffart
313832de8d Put the progress database within the journal 2013-10-16 12:01:14 +02:00
Olivier Goffart
2c63f7a24d Merge branch '1.4'
Conflicts:
	VERSION.cmake
	src/mirall/application.cpp
	src/mirall/application.h
	src/mirall/csyncthread.cpp
	src/mirall/folder.cpp
	src/mirall/folder.h
	src/mirall/folderman.cpp
2013-10-15 17:00:53 +02:00
Olivier Goffart
10fba886dc Do not elide the progress text
It's size is computed so the text fit, there is no need to alide it.

Fixes #1094
2013-10-15 14:58:34 +02:00
Klaas Freitag
d0d362664b Handle proxy on folder level, not folderman level. 2013-10-14 16:11:52 +02:00
Klaas Freitag
f841450dae Do append non empty lines not starting with a hash to ignores. 2013-10-14 16:11:52 +02:00
Klaas Freitag
a3927c5c2c Avoid quick flickering up of the ok-icon for the sync prepare state.
For the SyncPrepare phase now the icon that was displayed before is
kept. If the folder was disabled before, the sync icon is displayed.
2013-10-14 12:59:08 +02:00
Klaas Freitag
89cfa387cd Remove bogus html formatting tag. 2013-10-14 11:46:02 +02:00
Olivier Goffart
1fccb23442 Don't show desktop notification when the user don't want to
Fix #1093
2013-10-14 11:33:47 +02:00
Klaas Freitag
bfd50ffcd0 Do not show progress if nothing is transmitted, show number of deletes. 2013-10-14 11:16:17 +02:00
Klaas Freitag
4f2a171913 Avoid quick flickering up of the ok-icon for the sync prepare state.
For the SyncPrepare phase now the icon that was displayed before is
kept. If the folder was disabled before, the sync icon is displayed.
2013-10-11 17:54:26 +02:00
Daniel Molkentin
005d70a73c Proxy support: Reset useSystemConfiguration() in all cases but DefaultProxy
Fixes #1016
2013-10-11 14:25:35 +02:00
Klaas Freitag
592291cbcb Fix initialized after warning. 2013-10-11 12:10:47 +02:00
Klaas Freitag
7236bd7dd4 Make problem warnings not appearing in the tray.
This fixes bug #944: Do not show the warning icon in the tray.
2013-10-11 12:09:27 +02:00
Klaas Freitag
c02d5f41a5 Remove bogus html formatting tag. 2013-10-11 12:09:27 +02:00
Daniel Molkentin
5a7cd815ab Reconnect if network is unavailable after startup
Fixes: #1080
2013-10-11 11:43:23 +02:00
Klaas Freitag
fb4728c7ee Handle sync enable flag correctly in folder scheduling.
This fixes bug #1083.

Conflicts:
	src/mirall/folder.cpp
2013-10-10 11:32:56 +02:00
Klaas Freitag
f34621578e Use qint64 rather than int64_t. 2013-10-09 14:33:24 +02:00
Klaas Freitag
5e50b1f1fd Add some progress meassuring logging. 2013-10-09 14:33:09 +02:00
Klaas Freitag
3c95d342ee Handle sync enable flag correctly in folder scheduling.
This fixes bug #1083.
2013-10-09 14:27:28 +02:00
Klaas Freitag
53ac5427a8 Integrate progress dialog into settings dialog. 2013-10-09 14:27:28 +02:00
Klaas Freitag
1ed8afba09 Minor changes. 2013-10-09 14:27:28 +02:00
Klaas Freitag
ef81a8a2ad Use qint64 rather than int64_t. 2013-10-08 15:41:15 +02:00
Klaas Freitag
fa9d1614e7 Add some progress meassuring logging. 2013-10-08 14:07:46 +02:00
Olivier Goffart
05fbfb520f Protect the sync database by a mutex since it is used by the thread 2013-10-04 21:05:46 +02:00
Daniel Molkentin
805e1330ad Compile with MinGW 2013-10-04 20:29:42 +02:00
Olivier Goffart
7c6fcf688c Fix the fact that some success was reported as error 2013-10-04 15:55:59 +02:00
Olivier Goffart
127055dd70 Refactor a bit the error reporting from the propagator
Add different classes of error failures.
Fatal error means the sync should be stopped.
SoftErrors are not to be displayed to the user.

We still need to make a classification of the errors.
2013-10-04 15:55:59 +02:00
Markus Goetz
f4929e849e CsyncThread: Activate recursive PROPFIND 2013-10-04 15:42:40 +02:00
Olivier Goffart
d8d2d36638 Fix SQL Query 2013-10-03 23:00:47 +02:00
Olivier Goffart
baa9ba089c Save the database after each operation. 2013-10-03 22:41:12 +02:00
Olivier Goffart
3495b822a5 TMP 2013-10-03 20:01:07 +02:00
Daniel Molkentin
be88d425fc Fix connecting to the mysql db 2013-10-03 19:52:09 +02:00
Klaas Freitag
94a06cec5b WIP on the journal database. 2013-10-03 18:52:02 +02:00
Klaas Freitag
4008f6b309 Fix file status enum names. 2013-10-03 17:55:32 +02:00
Klaas Freitag
daac6886a0 Added method setFileRecord to update sync journal 2013-10-03 17:48:14 +02:00
Daniel Molkentin
e304dfd5b9 Add socketapi
Slightly amended by: Daniel Molkentin <danimo@owncloud.com>
2013-10-03 17:05:01 +02:00
Klaas Freitag
2e3aabf99b Read header without prefix path now that it's in 3rdparty. 2013-10-03 16:47:48 +02:00
Klaas Freitag
4501c64e61 Do not include whole header of csync_exclude. 2013-10-03 16:22:31 +02:00
Klaas Freitag
273105e78b Handle new case SyncAbortRequested. 2013-10-03 16:21:54 +02:00
Klaas Freitag
2707116350 Minor fixes for file_status 2013-10-03 16:12:50 +02:00
Klaas Freitag
c7d30bae98 Handle new sync result enum. 2013-10-03 15:32:44 +02:00
Klaas Freitag
be328581a7 Implemented sync status function for overlay icons. 2013-10-03 15:29:10 +02:00
Klaas Freitag
c32bc27b3e Add sync journal database class that opens the csync db to read from it. 2013-10-03 15:29:10 +02:00
Klaas Freitag
0fef88a9b9 Some comments added. 2013-10-03 15:29:10 +02:00
Klaas Freitag
3e0fc56495 Dont show the [i] icon in the tray, see bug #942 2013-10-03 15:29:10 +02:00
Olivier Goffart
396ec4f888 Fix race condition in the logger.
Logs can come from multiple thread, we need to keep the _logstream
protected by a mutex
2013-10-03 14:37:13 +02:00
Olivier Goffart
79ea7c3eed Abort the sync asynchroniously
Don't block the GUI when clicking on pause

Mirall issue #968
2013-10-03 14:36:32 +02:00
Olivier Goffart
b18810f381 Implement abort with the new propagator
abort was implemented in csync after the new propagator was written,
so it was not working with the new propagator
2013-10-03 14:35:56 +02:00
Daniel Molkentin
339ed20abc Utility::showInFileManager(): Substitute valid desktop file parameters 2013-10-03 12:05:00 +02:00
Klaas Freitag
44ed577992 List results for all folders, not only one. 2013-10-03 11:36:18 +02:00
Klaas Freitag
f6685accc3 Use subdirs for more xdg dirs to go through 2013-10-02 19:23:06 +02:00
Klaas Freitag
2c2e79c13d Consider the folder of items to delete from info window. 2013-10-02 19:23:06 +02:00
Daniel Molkentin
81961068a2 Utility: Move OS specific implementations into separate files 2013-10-02 19:15:56 +02:00
Daniel Molkentin
4e91a6450c Change the recent changes menu and file item dialog behavior
Recent Changes:
- "No items synced recently"
- Add separator to the details section
- Make items clickable (will open file location in file manager)
- If a file was deleted, disable it

File Item Dialog:
- Make items clickable (will open file location in file manager)

This is implemented via a new method Utility::showInFileManager(QString),
which goes through great lengths to use use the right file manager on all
OSes/WMs/DEs, and make sure it selects the file in question if possible.
This needs good testing, though.

Fixes #1044
2013-10-02 18:17:48 +02:00
Daniel Molkentin
3dc2547bb5 WIP 2013-10-02 18:16:32 +02:00
Olivier Goffart
47f299f0ee Send the last known etag to the server in a If-Match header
That way we avoid race conditions in case the file changed between the
update and the reconcile
2013-10-02 15:57:49 +02:00
Olivier Goffart
d135aab86c clear the etag in every cases, not only when we upload files 2013-10-02 15:57:49 +02:00
Olivier Goffart
e2a2b882bb Remove the unused errorDetails
It was not displayed to the user. Only use errorString instead.

Also report neon error to the user
2013-10-02 15:57:49 +02:00
Klaas Freitag
d8309a64cb Even more cleanup. 2013-10-02 15:55:15 +02:00
Klaas Freitag
55722099fa More refactoring: Logger and Logbrowser out of application class. 2013-10-02 15:29:24 +02:00
Klaas Freitag
2149814428 Fix/enhance user information about problems on startup.
Pass the error conditions to the gui class.
2013-10-01 18:25:43 +02:00
Klaas Freitag
ea1c951006 Refactoring: Moved all GUI related computing out of application class.
Created ownCloudGui class to contain all gui related stuff.
2013-10-01 13:58:01 +02:00
Klaas Freitag
4a96f9a5c9 Add Mirall namespace. 2013-10-01 13:58:01 +02:00
Klaas Freitag
fcc4151810 Fix sequence of directories in help text. 2013-10-01 13:58:01 +02:00
Klaas Freitag
74983af3b4 Make evaluateSync public, review pls. 2013-10-01 13:58:00 +02:00
Klaas Freitag
f5bcb11fe9 Add connected server to error message. 2013-10-01 13:58:00 +02:00
Klaas Freitag
f6f1c638a5 Allow Constructor to be public, for synclibrary 2013-10-01 13:58:00 +02:00
Daniel Molkentin
9b62104f30 Add Folder column to Details sync protocol
Also fixes padding

Fixes #1037
2013-09-30 14:12:59 +02:00
Daniel Molkentin
df36ebf308 Merge branch '1.4'
Conflicts:
	VERSION.cmake
2013-09-30 13:34:10 +02:00
Daniel Molkentin
86e42a9cf0 Fix possible endless loop in inotify
Fixes #1041
2013-09-27 20:10:12 +02:00
Klaas Freitag
de9dcbd231 Transmit the new mtime of the file with the PUT request.
If the server supports it already, we can save another request by
sending the mtime as a header value in the PUT request and check the
servers reply for a acknoledge header.
2013-09-25 14:26:13 +02:00
Klaas Freitag
5cf13dfa32 Make logging work again. 2013-09-24 15:56:03 +02:00
Klaas Freitag
27b9a5aed9 Merge branch '1.4', brings in the changes we did for 1.4.1 2013-09-24 14:18:25 +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
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
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
Thomas Müller
e38d0807c9 moving back to 1024 as divider for kB, MB, GB & TB
(cherry picked from commit c87c456ae0)
2013-09-13 20:14:47 +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
Daniel Molkentin
f97bb240d7 Setting thread priority is only possible after calling start() 2013-09-11 15:52:07 +02:00
Daniel Molkentin
574e029254 Setting thread priority is only possible after calling start() 2013-09-11 15:51:06 +02:00
Klaas Freitag
ce5934461e 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:33: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
6f637e40d8 Enable and disable syncing also in the folder objects. 2013-09-11 10:32:09 +02:00
Klaas Freitag
ec06663dee Handle startup network errors correctly. 2013-09-11 10:32:09 +02:00
Olivier Goffart
177114f8d9 Initialize the size of the SyncItem 2013-09-11 08:49:09 +02:00
Olivier Goffart
6bfdfd1af0 Fix progress with new propagator 2013-09-11 08:42:29 +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
55f2fcb4c6 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:37:52 +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
Daniel Molkentin
00d09763af Fix compile error 2013-09-10 11:37:52 +02:00
Daniel Molkentin
5639572ef3 Wait up to 30 secs before complaining about missing systray 2013-09-10 11:37:52 +02:00
Olivier Goffart
6da2f6bbaa Qt5: QSettings is no longer case insensitive 2013-09-09 14:00:13 +02:00
Olivier Goffart
198cb43ad6 Qt5: Q_WS_* macro were deprecated, replace by QT_OS_*
in particular, QT_WS_X11 is no longer defined
2013-09-09 13:31:39 +02:00
Daniel Molkentin
51a7cbeb55 kill warning 2013-09-05 20:15:55 +02:00
Daniel Molkentin
171a9e1575 fix Qt 5 build on Mac/Win 2013-09-05 19:53:39 +02:00
Klaas Freitag
76deabe4df Use List to handle errors and display multiline. 2013-09-05 19:28:23 +02:00
Klaas Freitag
74ec37f3c7 Use List to handle errors and display multiline. 2013-09-05 19:25:59 +02:00