Commit graph

257 commits

Author SHA1 Message Date
Olivier Goffart
91a39588c6 re-enable the sync if the syncing was disabled because the connection is down at startup 2013-08-14 12:59:56 +02:00
Olivier Goffart
a642f86d5b Detect connection failure from the polling 2013-08-14 12:34:03 +02:00
Olivier Goffart
00cf290574 reduce a bit the log output 2013-08-14 12:34:03 +02:00
Olivier Goffart
82fb8c49cf Do not clear the pending event in the polling anymore
This is useless,  and can even cause problems now since polling only do
a sync when the server has actually changed
2013-08-09 14:10:21 +02:00
Olivier Goffart
6655da9d24 Fix warning 2013-08-08 16:03:57 +02:00
Olivier Goffart
52a47fbc67 Force a sync run after 5 minutes 2013-08-08 14:32:14 +02:00
Daniel Molkentin
055410e38f Setup proxy connection before every sync 2013-08-08 00:46:23 +02:00
Daniel Molkentin
c24d6bd71c Notify user if there is a problem with the inotify watcher 2013-08-07 15:00:10 +02:00
Daniel Molkentin
9b319cf189 Significantly simply logging 2013-08-07 15:00:10 +02:00
Klaas Freitag
01fd3242c4 Add folder alias to sync result structure. 2013-08-06 18:04:42 +02:00
Olivier Goffart
5d24599546 Fetch the etag of the folder to see if it has changed before syncing
Notice that this does not work for the toplevel directory yet, as
owncloud does not change the etag of the root folder
2013-08-05 20:13:39 +02:00
Olivier Goffart
07d9d3770b Refactor: move the pollTimer to the folder 2013-08-05 20:13:39 +02:00
Daniel Molkentin
c9ddb12b5a Build after merge 2013-08-05 20:14:22 +02:00
Daniel Molkentin
0932ee6051 Merge branch 'shibboleth'
Conflicts:
	src/CMakeLists.txt
	src/mirall/application.h
2013-08-05 19:54:06 +02:00
Daniel Molkentin
26bd164168 Safer implementation for substitution of WebDav URL
- Use of RegEx is dangerous with folder names
  containing e.g. '(' or ')'.
- Didn't work in my case at all.
2013-08-05 19:45:24 +02:00
Olivier Goffart
6fb5c04bde Finish danimo's patch that refactor the scheduler
Wait a full poll interval after the end of the sync
2013-08-05 15:15:15 +02:00
Olivier Goffart
578bcc3522 Remove scheduler logic from folderman and moved it in folderman
Also fetch and parse the etag when doing a PROPFIND to get the quota

(Patch from danimo)
2013-08-05 15:15:15 +02:00
Klaas Freitag
49be4a3be2 Propagate soft errors into SyncResult, icon fixes. 2013-08-02 14:22:01 +02:00
Klaas Freitag
5e82dc1841 Some more refinements on item progress 2013-08-02 12:16:21 +02:00
Krzesimir Nowak
9724e52f1b Fix warnings.
Should be now compilable when run with -Wall -Wextra -Wpedantic
-Werror.
2013-08-01 16:53:43 +02:00
Krzesimir Nowak
78b6f4df01 Move the creds/ and wizard/ directories one level higher. 2013-08-01 16:53:43 +02:00
Krzesimir Nowak
eacb849353 Fix credentials handling in csync.
CSync module's properties can be set only after it was initialized, so
we split the sync context vfunc into two: the one ran before
initialization and the one ran before sync beginning.
2013-08-01 16:53:43 +02:00
Krzesimir Nowak
92af3ea725 Add and use credentials abstraction. Implement HTTP and dummy credentials.
To achieve that MirallConfigFile now exports several general
settings-related methods for subclasses (here: for HttpConfigFile), so
it does not have to contain any code targeted for specific
credentials.
2013-08-01 16:53:43 +02:00
Klaas Freitag
a64724be0e More sophisticated progress, add Recent Changes Menu to tray.
ProgressDispatcher now stores a queue of events as well as sync
problems, better known as soft errors. The tray menu displays a
sub menu with 5 recent changes and adds a more... button that
shows a warning icon if soft errors had happend.
More to implement.
2013-07-30 22:24:48 +02:00
Klaas Freitag
a0d9d41455 Use const reference parameters for custom struct parameters. 2013-07-30 22:24:48 +02:00
Klaas Freitag
edf8147561 Small cleanups. 2013-07-26 15:10:03 +02:00
Klaas Freitag
3a9ab3a86f Consolidated progress displaying to a single slot from csync. 2013-07-26 13:44:38 +02:00
Klaas Freitag
de7bcca5fe Fixed signal and slot parameter list for progress. 2013-07-24 14:40:47 +02:00
Klaas Freitag
976c41a3b8 Beautified ProgressDispatcher 2013-07-23 13:32:33 +02:00
Klaas Freitag
274f59f93b Reworked progress again following mirall bug #137 2013-07-23 12:23:29 +02:00
Daniel Molkentin
56e5627b6b ownCloudFolder -> Folder
Fixes #769
2013-07-22 20:30:38 +02:00
Daniel Molkentin
b8f783f104 Set proxies and ignored files before every sync run 2013-07-16 16:05:04 +02:00
Daniel Molkentin
c6219581f6 More work on ignore/exclude files:
- Introduce split between sytem and user files
- Add Editor

Current limitation: Picking up the changes requires
a restart
2013-07-05 16:54:11 +02:00
Daniel Molkentin
c15ce2b20b Remove last traces of localRun 2013-05-04 15:16:53 +02:00
Daniel Molkentin
2789522948 Folder/ownCloudFolder: Clean up secondPath stuff 2013-04-25 16:06:31 +02:00
Klaas Freitag
9d2c3ebad3 Move config.h out of header files. 2013-02-25 09:54:19 +01:00
Daniel Molkentin
7a03164a9a Handle server offline state on application start gracefully 2013-02-18 14:56:50 +01:00
Daniel Molkentin
8dd97a358a Introduce SyncPrepare state
SyncPrepare is when the folder class prepares the actual syncing,
i.e. does treewalks and runs the reconceiler in case of mirall. The actual
SyncRunning state will only be entered if there is actually anything to
sync.

Fixes #289
2013-02-14 17:36:11 +01:00
Klaas Freitag
699ae176df Revert "Allow setting of custom poll interval through status.php"
This reverts commit 39a89e8fc7.

Conflicts:
	src/mirall/folderman.cpp
	src/mirall/folderman.h
2013-02-10 14:57:57 +01:00
Klaas Freitag
39a89e8fc7 Allow setting of custom poll interval through status.php 2013-02-09 14:04:04 +01:00
Klaas Freitag
8af257a4cd Start fs watching with a delay of 2 seconds to don't catch the journal changes. 2012-12-06 18:38:45 +01:00
Daniel Molkentin
287c073f00 Remove code for local sync runs
Rely entirely on folderwatcher. Local
sync runs can be implemented in terms
of a dummy folderwatcher if we want
to support systems without fs monitoring
again..
2012-12-06 17:53:04 +01:00
Daniel Molkentin
f20db6bbc1 Implement folder watching for OS X using FSEvents 2012-12-06 17:53:04 +01:00
Klaas Freitag
ee9e814f41 Getter and Setter for the config file name. 2012-11-22 12:32:06 +01:00
Klaas Freitag
5519bc7cbb Try to create local dir if not existing. 2012-11-05 11:36:39 +01:00
Klaas Freitag
2501cc57d5 Display error status in statusdialog. 2012-11-05 11:36:38 +01:00
Klaas Freitag
fbb46b64f9 Check if local folder is proper and set error stat accordingly. 2012-11-05 11:36:38 +01:00
Klaas Freitag
8d1c7ddb9f Make sure that path() has a trailing slash. 2012-10-29 12:20:57 +01:00
Daniel Molkentin
e3a9081181 Fix default implementation of Folder::nativeSecondPath(). 2012-09-24 19:20:16 +02:00
Daniel Molkentin
d0a66b70f4 Defer handling of pretty remote path to subclasses.
The base class cannot reasonably assume anything about
pretty printing. The subclasses know a lot better.
2012-09-21 18:33:11 +02:00
Klaas Freitag
58d75e7bfe Show pathes in platform specific notation 2012-08-15 18:16:44 +03:00
Klaas Freitag
4ef948bf3c Use a better inotify implementation and use config.h. Fixes oCB #713. 2012-07-20 17:13:23 +02:00
Klaas Freitag
c8ac719752 Remove csync db in case the local path gets removed. 2012-06-25 15:31:13 +02:00
Klaas Freitag
06b3a50e84 Wipe the csync statedb after a sync definition is removed. 2012-06-11 10:10:07 +02:00
Klaas Freitag
3052506d31 Read poll timer settings from config file. 2012-05-26 14:37:21 +02:00
Klaas Freitag
6f7165f9f0 A lot of krazy2 (codechecker) fixes. 2012-05-21 16:48:49 +02:00
Klaas Freitag
9c4613e5d2 Allow to interrupt running sync task, incl. some cleanups. 2012-04-30 08:56:56 +02:00
Thomas Müller
527bece4a9 Backport to Qt 4.6 finished - test against a local installation of owncloud via http 2012-04-21 21:03:29 +02:00
Klaas Freitag
fda234cfb8 initialize sync status correctly. 2012-04-21 11:22:03 +02:00
Klaas Freitag
5c07363335 fix status dialog status display and overall status display. 2012-04-17 15:02:18 +02:00
Klaas Freitag
61ddff840a Fix display status dialog: Do not flicker on local runs if polling.
handle syncresult object in folder consistent.
2012-04-17 13:18:14 +02:00
Klaas Freitag
29a38b82ad Replace USE_WATCHER with USE_INOTIFY 2012-04-15 14:47:43 +02:00
Klaas Freitag
cd817940ae - added a new icon to display the waiting-to-be-synced state
- fixed the status display if the status dialog opens
2012-03-31 12:44:22 +02:00
Klaas Freitag
3fb471edad Changed the folder queue to use QString instead of folder ptrs.
Delete folder after finished if its syncing at deletion time.
2012-03-29 10:13:19 +02:00
Klaas Freitag
84ffebe26c Let folderwatcher use the exclude list file.
simplified naming in mirallconfigfile class.
2012-03-28 12:23:34 +02:00
Klaas Freitag
248a0cfed8 - removed the sitecopy files and last references
- Fix status dialog:
 * display local and remote folder names
 * fixed status icon
 * fixed sizing when font size changes
 * fixed enable/disable buttons
- moved second path to folder base class
- added remote folder role to status dellegate
2012-03-26 13:20:15 +02:00
Klaas Freitag
bdbb85f245 Big changes: queue sync requests of folders and do in one thread
only to avoid thread clottering. Improve error reporting from the
csync thread.
2012-03-22 16:22:08 +01:00
Klaas Freitag
16a9a73ea3 - removed constants.h as not longer needed because of themes.
- tray icons from theme now.
2012-03-15 18:09:00 +01:00
Klaas Freitag
1a20d42424 use portable QTimer to initialize the rand function. 2012-03-13 15:45:10 +01:00
Klaas Freitag
2ae1b5dc84 move the poll timer stop to the correct place just before starting
to sync.
2012-03-12 17:37:18 +01:00
Klaas Freitag
949b33a6d1 Set a variable poll timer interval, useful for multiple folders.
Start polltimer again after folder add.
2012-03-08 11:39:31 +01:00
Klaas Freitag
8c9e364eec Removed moc includes as this is fixed in the build process. 2012-03-01 16:15:29 +01:00
Klaas Freitag
1fc19647e5 Added #ifdef USE_WATCHER to switch between INotify and Polling
depending on the platform environment var set by Qt.
2012-02-29 15:25:16 +01:00
Klaas Freitag
f6846a2107 Added local polling to owncloud folder, based on csync. 2012-02-28 16:49:13 +01:00
Klaas Freitag
da482e742b removed all GUI related stuff finally away from the folder class,
last thing were the openActions, which went to the GUI class.
2012-02-21 11:50:19 +01:00
Klaas Freitag
4c655684a0 introduced theming in the status dialog, removed the syncState again
and moved it to the SyncResult object to simplify code, removed
icon code from folders (WIP), removed some unused code.
2012-02-20 16:45:27 +01:00
Klaas Freitag
e63fcdc9f0 simplified the folder change notification to the GUI app: Reduced
to one signal stateChanged(), provided an easy api to get the
new state and last sync result by alias in folderman.
2012-02-18 21:21:58 +01:00
Klaas Freitag
07cfc08823 Use a hash to store inotified pathes. 2012-02-15 22:36:52 +01:00
Klaas Freitag
0c9c2962c2 Enable/Disable button, patch submitted by Alvaro Soliverez 2011-12-12 17:47:30 +01:00
Klaas Freitag
bf40e0aafc - added icon defaults for systems without icon theming bnc#730834
- fixed some bugs with ownCloud status check fails
- bumped version to 0.1.2
2011-11-28 14:53:34 +01:00
Klaas Freitag
b9ce7d037f - renamed icons to mirall instead of ownCloud
- install of desktop file icon added
2011-11-22 18:31:44 +01:00
Klaas Freitag
cd4528324c error handling: sitecopy not installed 2011-11-04 11:41:49 +01:00
Klaas Freitag
71873df369 Use icons depending on the backend 2011-10-19 13:10:43 +02:00
Klaas Freitag
9d3a0e8596 Implemented folder fetching. 2011-10-18 10:22:24 +02:00
Klaas Freitag
4911a528c4 Error publishing in the status dialog 2011-10-13 16:41:24 +02:00
Klaas Freitag
f3123b6c02 - simplified the folder wizard
- live check of the ownCloud connect
2011-10-06 10:54:54 +02:00
Klaas Freitag
ace9e9d690 Error counting added 2011-09-27 08:15:30 +02:00
Klaas Freitag
83613f4576 Add a sitecopy backend to mirall, some GUI cleanups 2011-09-26 13:12:00 +02:00
Duncan Mac-Vicar P
67b6e77979 handle errors to the UI 2011-04-08 11:36:53 +02:00
Duncan Mac-Vicar P
b0efc506cd increase poll timer to 1 minute 2011-04-08 10:51:18 +02:00
Duncan Mac-Vicar P
a4c5996f47 Make the folders network state aware 2011-04-06 15:57:18 +02:00
Duncan Mac-Vicar P
65c41b6368 add simple network location infrastructure 2011-04-06 15:22:40 +02:00
Duncan Mac-Vicar P
f882fe46e2 Use icons from theme. Qt already handles this in a nice way 2011-04-06 12:09:56 +02:00
Duncan Mac-Vicar P
2411b0c9b7 add proper licensing 2011-04-06 11:48:02 +02:00
Duncan Mac-Vicar P
ab86052f8a typo, it is path() not root() 2011-04-06 10:56:16 +02:00
Duncan Mac-Vicar P
79f28c7f10 stop poll timer when syncing, and add path to the debug messages 2011-04-06 10:40:15 +02:00
Duncan Mac-Vicar P
c19c9859e3 add alias to folder 2011-04-06 09:52:02 +02:00
Duncan Mac-Vicar P
9055cdc60d move polling system to Folder where it belongs 2011-04-05 12:16:24 +02:00
Duncan Mac-Vicar P
15579232f7 refactor the notification timer in a new method
some debug messages cleanup
2011-03-27 23:29:45 +02:00
Duncan Mac-Vicar P
6b8589f4dc When syncing, disable event notifier and start accumulating them
until the sync is done. When they are enabled again, a forced
event is scheduled to empty the queue.
2011-03-27 01:26:41 +01:00
Duncan Mac-Vicar P
64e4d531b3 sync process now runs, but no synchronization between sync processes 2011-03-25 18:25:56 +01:00
Duncan Mac-Vicar P
f31ddde36d Merge branch 'fix_inotify'
Conflicts:
	src/mirall/folder.cpp
	src/mirall/folder.h
2011-03-22 23:21:56 +01:00
Duncan Mac-Vicar P
d885fe39f8 Implement an event queue:
- If FolderWatcher receives a inotify event in less than 5
  seconds from the last one, then the paths are queued and a timer
  is setup for 5 seconds more. New events are queued if a timer
  is running. The next event after the time gap is due will process
  the full path list
2011-03-22 23:03:43 +01:00
Duncan Mac-Vicar P
f42169a8fc The unison folder class.
May be factor it out in a external process tool folder type later.
2011-03-21 00:58:53 +01:00
Duncan Mac-Vicar P
e2638aa487 react to its own signals to set the icons 2011-02-17 15:10:06 +01:00
Duncan Mac-Vicar P
cf88820069 rename action to openAction to add also forgetAction and others later 2011-02-17 11:27:05 +01:00
Duncan Mac-Vicar P
b7a3fc7ab8 first port to C++ 2011-02-17 00:21:45 +01:00