Commit Graph

260 Commits

Author SHA1 Message Date
Martchus b61592fbbd Allow editing Syncthing config via JavaScript 2018-04-07 22:01:54 +02:00
Martchus c94b34595b Improve properties of SyncthingConnection 2018-04-04 20:18:42 +02:00
Martchus 0c104f60b8 Wait till all processes finished, ask for killing
See https://github.com/Martchus/syncthingtray/issues/15
2018-04-02 23:32:52 +02:00
Martchus f9305819a7 Update translations 2018-04-02 21:26:05 +02:00
Martchus ce7a4421fa Consider isActiveFor() for process also when systemd unavailable 2018-04-02 20:52:50 +02:00
Martchus 146d4870e4 Refactor preventing unwanted error messages
* See https://github.com/Martchus/syncthingtray/issues/15
* Not tested yet
2018-04-02 20:35:30 +02:00
Martchus c7ea5974e4 Allow editing config via syncthingctl 2018-04-01 23:01:37 +02:00
Martchus 754cd0c2e1 Allow printing current config 2018-04-01 20:21:51 +02:00
Martchus e9e85e6ba9 Update translations 2018-03-31 22:36:31 +02:00
Martchus d2eb4addd9 Distinguish between local an remote sync in settings 2018-03-31 22:31:28 +02:00
Martchus 023279142b Fix "sync complete" notifications during upload
* Distinguish between local and remote FolderCompletion events
* Do not request completion via REST-API, the FolderCompletion
  event covers both - local and remote changes.
2018-03-31 22:07:05 +02:00
Martchus bfd51fcaff Refactor SyncthingConnection::readDirEvent() 2018-03-31 21:19:53 +02:00
Martchus d74738a8a4 Enable event logging for debugging purposes 2018-03-31 19:48:27 +02:00
Martchus 6828e96b53 Improve sync complete notifications
* Also consider remote updates
* Still massive notifications when uploading
  about local folder completed
2018-03-29 00:38:21 +02:00
Martchus e6642245df Improve coding style in SyncthingConnectionSettings::loadHttpsCert() 2018-03-29 00:36:42 +02:00
Martchus c1efb690ef Update translations 2018-03-24 17:06:47 +01:00
Martchus b12988e342 Apply clang-format from LLVM 6 2018-03-24 17:06:16 +01:00
Martchus 914aac6e39 Make bash completion faster by requesting only config 2018-02-19 03:22:47 +01:00
Martchus 6be44cc93f Allow restart via plasmoid 2018-02-19 01:38:41 +01:00
Martchus e6ac3d8599 Update status when config updated 2018-02-18 18:13:06 +01:00
Martchus d20a4aea19 Avoid nesting in SyncthingConnection::continueConnecting() 2018-02-18 18:12:22 +01:00
Martchus c4d63e0e7c Ignore old FolderCompletion events 2018-01-28 18:07:39 +01:00
Martchus 38ac3504b2 Update German translation 2018-01-27 23:38:26 +01:00
Martchus 79fe97d952 Refactor notifications
* Use SyncthingNotifier class
* Show 'Sync complete' on FolderCompletion event
* Add extra structure for stats
2018-01-27 23:27:50 +01:00
Martchus b9c87a9bba Show remote progress in cli 2018-01-25 00:03:31 +01:00
Martchus 447928a018 Request device/directory completion 2018-01-24 21:46:18 +01:00
Martchus 53dafd1627 Complete German translation 2017-12-30 01:04:02 +01:00
Martchus 404f517b4c Refactor composing "sync complete string"
to prevent code duplication between regular tray
icon and plasmoid.
2017-12-30 00:57:35 +01:00
Martchus 841b250680 Add SyncthingNotifier class
First step of refactoring compution of high-level
notifications to prevent code duplication for compution
of "disconnected" and "sync complete" events.
2017-12-30 00:28:03 +01:00
Martchus e6b97e1ecc Clean code for dealing with folder (scan) completion 2017-11-22 00:29:50 +01:00
Martchus 4f58e054d5 Improve test mode (mocked SyncthingConnection)
* Add further events allowing to reproduce download
  model issues visible in Plasmoid
* Use TestApplication to find testfiles
2017-11-12 17:03:30 +01:00
Martchus bc239b9292 Update translations 2017-11-01 18:30:32 +01:00
Martchus 40465a8abb connector: Add method to find dir by path 2017-10-16 19:41:56 +02:00
Martchus 5e3b195b44 Update translations 2017-10-05 00:34:00 +02:00
Martchus ea96c64563 Update number of connected devices correctly
Computing the number of connected devices on overall
connection status changed event is not sufficient.
2017-10-05 00:08:46 +02:00
Martchus b692c29e50 Fix possible segfaults in set...Paused() functions
Check whether iterator is valid befor dereferencing
2017-10-01 21:19:41 +02:00
Martchus 044f20343c cli: Use error phrases from c++utilities 2017-09-26 15:43:34 +02:00
Martchus 2ee7b9af64 plasmoid: Improve settings
* Configure appearance options via Plasmoid specific
  settings
* Allow to configure the size
* Remember last connection config
2017-09-18 20:29:36 +02:00
Martchus 69ffaeb1f3 Apply tidy after updating to clang-format 5.0.0
The behavior of clang-format slightly changed in Clang 5.0.0:
http://releases.llvm.org/5.0.0/tools/clang/docs/ReleaseNotes.html#clang-format
2017-09-17 21:48:15 +02:00
Martchus eb70f5a3f4 Fix warnings about unused variables 2017-09-17 20:32:29 +02:00
Martchus 8d35251234 Update translations 2017-09-09 21:40:19 +02:00
Martchus 144feb426c Prevent rescanning all dirs if no dir ID specified 2017-09-09 21:31:05 +02:00
Martchus 012ca9a0b3 Update translations 2017-09-08 17:01:52 +02:00
Martchus 582c800b7c Add directory errors to mock config 2017-09-08 17:01:51 +02:00
Martchus 1e0f746770 systemd integration: Make all relevant properties notifyable 2017-09-08 17:01:51 +02:00
Martchus 9a9ee2c10e Don't export Syncthing{Dir,Dev}Status to QML
Qt doesn't handle enum class correctly so those enums
would conflict with SyncthingStatus
2017-09-08 17:01:51 +02:00
Martchus 6585117186 Add SyncthingConnection::isLocal() 2017-09-08 17:01:51 +02:00
Martchus 408f77f844 Allow moving connection configurations up and down 2017-09-07 16:42:24 +02:00
Martchus fe0688cb27 Only add helpers for mocked SyncthingConnection if required 2017-09-05 00:35:54 +02:00
Martchus c690af9679 Update translations 2017-09-05 00:29:15 +02:00
Martchus 62b94b8460 Show offset of JSON parsing error 2017-09-05 00:23:17 +02:00
Martchus 2747ce76ff Allow compiling connector with mocked SyncthingConnection 2017-09-05 00:22:52 +02:00
Martchus 80c2a4212e Show global/local dir status in Dolphin action 2017-08-30 00:36:49 +02:00
Martchus 8dce7de433 Update translations 2017-08-30 00:14:59 +02:00
Martchus 2c1768c219 Move helper for setting traffic labels to connector
* Reduce code duplication for in and out
* Allow using the helper from Plasmoid
2017-08-30 00:01:34 +02:00
Martchus 6b01e42fe4 Fix parsing time from folder summary 2017-08-30 00:01:34 +02:00
Martchus 6c6d7f00d5 Emit status update on each dir status change 2017-08-24 01:52:07 +02:00
Martchus af8327ece0 Show global and local dir status 2017-08-24 01:52:07 +02:00
Martchus 85ac283455 Consider event time when reading FolderSummary 2017-08-23 23:57:47 +02:00
Martchus 4136e23148 Get current dir status when connecting 2017-08-23 23:56:31 +02:00
Martchus ab2efb7012 Distinguish between requestDirStatistics and requestDirStatus 2017-08-23 23:55:19 +02:00
Martchus 91f7dc38d3 Fix HTTP method for "db/status" 2017-08-23 23:54:07 +02:00
Martchus ca256b62e8 Refactor SyncthingConnection
* Reduce if-cascades
* Add extra method for handling fatal errors
* Read directory summary in extra method
* Allow requesting summary for directory explicitely
2017-08-23 00:22:02 +02:00
Martchus be6d0cbf5d Don't show own dev in shared devs of dir 2017-08-22 20:44:49 +02:00
Martchus 9b45c49b97 Show names for the devs a dir is shared with
(previously only the IDs were shown)
2017-08-22 19:45:07 +02:00
Martchus 3ff4f69180 Remove leftover from testing 2017-08-21 21:46:50 +02:00
Martchus ed1b13d43e Fix rescanning part of connection tests 2017-08-21 01:01:20 +02:00
Martchus cc6fec91c1 Dump config during connection tests only when enabled
by setting environment variable SYNCTHING_TEST_DUMP_CONFIG_UPDATES
2017-08-21 01:00:41 +02:00
Martchus a0d6c6b53d Update translations 2017-08-20 01:26:19 +02:00
Martchus e52a2a6ef6 Improve error handling
Allow viewing request URL and response of internal
errors.
2017-08-20 01:20:47 +02:00
Martchus c843548baa Disable systemd support by default under MacOS 2017-08-06 00:38:30 +02:00
Martchus 6e7873e114 Add Qt Network as public dependency of connector 2017-08-06 00:37:49 +02:00
Martchus eafc65ec2b Remove obsolete translations 2017-08-01 10:45:50 +02:00
Martchus edc3a61545 Update translations 2017-08-01 08:42:20 +02:00
Martchus b2780568b4 Allow deletion of non-empty dirs
It is a common error that dirs can not be removed
because they still contain ignored items. Usually
I want to get rid of them nevertheless. This change
allows to remove all non-empty Syncthing can not
remove via the tray.
2017-08-01 00:28:51 +02:00
Martchus aca7f61c84 Prevent trying to rescan paused dirs
* Exclude paused dirs when rescanning all dirs to
  prevent errors
* Disable rescanning particular dir via gui if paused
2017-07-16 21:08:38 +02:00
Martchus fc307f0911 Update translations 2017-07-14 20:21:37 +02:00
Martchus c4ccda93c9 Show global directory errors messages
Previously, only error messages for failed
items have been shown.
2017-07-14 20:14:15 +02:00
Martchus 2aaff8233d Update translations 2017-07-14 17:53:15 +02:00
Martchus 471fb7c363 Fix checking number of expected SSL errors 2017-07-11 23:04:56 +02:00
Martchus f95ad68a3a Link testhelper against connector, remove global includes 2017-07-11 22:53:45 +02:00
Martchus 8f672eef14 connector tests: Remove unused 'this' capture 2017-07-11 19:35:40 +02:00
Martchus e4a382e4e8 Improve connector tests
Region coverage now by 74.4417%
2017-07-09 23:34:43 +02:00
Martchus ac6150d677 connection tests: Increase all timeouts for resuming/pausing
And apply clang-format
2017-07-08 01:17:19 +02:00
Martchus 570c2606f7 connection tests: Increase timeouts for resuming/pausing 2017-07-03 21:56:39 +02:00
Martchus 8fa6da5b9d connection tests: Ensure dirs and devs are ready 2017-07-03 14:07:20 +02:00
Martchus da8f6f7353 Apply tidy 2017-07-02 22:08:30 +02:00
Martchus 55757b1e57 connector: Refactor and improve tests 2017-07-02 21:47:59 +02:00
Martchus 04c9caf7d4 connector: Update raw config after pausing/resuming
It seems like (cached) raw config is not automatically updated
via newConfig() after pausing/resuming a dir/dev. So this is
now done manually.

Additionally, pausing/resuming devs is now also implemented by
posting new config.
2017-07-02 21:47:23 +02:00
Martchus 5d05e9a5df Fix compatibility with Qt < 5.8 2017-06-09 12:16:25 +02:00
Martchus 2845f5883d Fix compiling tests under 32-bit arch 2017-06-01 11:11:38 +02:00
Martchus b2aab9eb16 Show number of connected devs in tool tip 2017-05-30 15:06:34 +02:00
Martchus b2af9fc12d Export meta data for Data namespace 2017-05-11 00:02:20 +02:00
Martchus b1d9df73d1 Apply clang-format 2017-05-04 22:48:45 +02:00
Martchus 732a5fdd8d Apply clang-format 2017-05-01 03:34:43 +02:00
Martchus 16d62bb0c6 Provide default c'tor for registered meta-types 2017-04-23 14:15:03 +02:00
Martchus 01610f5027 Register some enums/structs as Qt meta-type
Reuired when creating a Plasmoid because these
types might be accessed from QML then
2017-04-23 14:02:15 +02:00
Martchus 675c1fb669 Use DateTime::unixEpochStart() 2017-04-19 22:09:47 +02:00
Martchus 40b8713ba6 Move test helper to separate library
Allows to share common test helper code
between tests for different components
2017-04-01 16:56:36 +02:00
Martchus 1168e31f55 cli: Add shortcut for current working directory
syncthingctl pwd status/rescan/resume/pause
2017-03-29 23:17:53 +02:00
Martchus 39b23842a8 Fix reconnecting test 2017-03-20 21:19:47 +01:00
Martchus 58a0282032 Update translations 2017-03-17 00:39:01 +01:00
Martchus 3c2ce3e82f Allow launching syncthing-inotify
Provide a way to have multiple instances of
the launcher option page controlling separate
processes.
2017-03-17 00:38:42 +01:00
Marius Kittler aa5a057aab Fix 'no return' error when building rpm package 2017-03-14 12:39:46 +01:00
Martchus 6c51a470b7 Improve connector tests
Still not sure why reconnecting fails with GCC
2017-03-11 18:07:49 +01:00
Martchus 0868f2cf6a Extend tests of connector library 2017-03-09 23:10:03 +01:00
Martchus a3887749a5 Test SyncthingConnection class 2017-03-09 02:58:13 +01:00
Martchus 02c4c778e5 Update translations 2017-02-23 23:20:45 +01:00
Martchus 8332176bf6 Improve pauseResumeDirectory()
* Use compact JSON
* Don't do anything if no dirs specified
* Note Syncthing issue
2017-02-23 23:12:38 +01:00
Marius Kittler 189a985e23 Support pause/resume directories in CLI 2017-02-23 23:12:38 +01:00
Martchus 16c88daf28 Allow pausing/resuming dirs in backend 2017-02-23 15:57:11 +01:00
Martchus fc13a8f146 Read paused state of directories 2017-02-20 21:00:18 +01:00
Martchus 6ec35fa203 Update translations 2017-02-20 18:42:27 +01:00
Martchus eab769b654 Move status strings to connector backend 2017-02-20 18:42:27 +01:00
Martchus e7c03881f1 Support rescan of single files/dirs 2017-02-20 18:42:27 +01:00
Martchus 8ed032f3d1 Determine Syncthing URL from config in backend 2017-02-20 18:42:27 +01:00
Martchus 71864376a9 Also consider sleep/standby as tolerable interruption
* Only supported when Logind is used
* Extension of b2325bf
* So notifications caused by Syncthing inavailability
  short after start or resume from standby can now be
  suppressed - at least when using Systemd/Logind
2017-01-15 17:32:20 +01:00
Martchus a414c1a43a Add D-Bus interface file for logind 2017-01-14 21:37:42 +01:00
Martchus 3d088948fd Ensure translations for service aren't removed
* Add those files unconditionally
* Add conditions inside the files instead
2017-01-14 21:36:37 +01:00
Martchus b2325bf5a0 Allow ignoring Syncthing inavailability after startup 2017-01-14 02:12:38 +01:00
Martchus 2a5137184a Distinguish unknown traffic from zero traffic 2017-01-14 00:58:24 +01:00
Martchus d923d8efff Don't override error reply when clearing errors 2017-01-13 11:42:01 +01:00
Martchus d1b61ba24a Determine systemd unit activation timestamp 2017-01-13 10:25:50 +01:00
Martchus bbac12f9e9 Make error polling configurable 2017-01-12 23:41:58 +01:00
Martchus ac0492d890 Clear Syncthing errors when considering read 2017-01-12 22:14:23 +01:00
Martchus f03af9c3cb Ensure connect with settings actually connects 2017-01-12 22:09:54 +01:00
Martchus ee59c2b1c4 Prevent disconnect notification when stopping Syncthing manually 2017-01-10 23:49:34 +01:00
Martchus f5788b688d Add German translation 2017-01-07 16:30:57 +01:00
Martchus aa6fd0520e Make c'tor explicit 2017-01-06 15:19:37 +01:00
Martchus 40348da1a7 Fix condition for systemd support 2017-01-03 00:34:48 +01:00
Martchus edba991d89 Don't show start/stop button when feature disabled 2017-01-03 00:29:15 +01:00
Martchus b06c975228 Update translations 2017-01-01 19:42:07 +01:00
Martchus 7755e97c5f Only reconnect when relevant settings changed 2017-01-01 19:19:16 +01:00
Martchus 3cadd8cbcb Improve systemd integration
* Allow using systemd unit status to better handle
  reconnect attempts to local instance
* Misc adjustments
2016-12-27 16:22:37 +01:00
Martchus 78450a2b7e Allow controlling Syncthing systemd service 2016-12-26 19:05:47 +01:00
Martchus 76ccd5fd1f Update translations 2016-12-13 21:36:05 +01:00
Martchus 2b75f1f3e5 Don't show error for each re-connect attempt 2016-12-12 23:45:40 +01:00
Martchus d3bde05ccd Update icon when new notifications shown 2016-12-03 01:00:04 +01:00
Martchus 7093f735ed Update translations 2016-11-26 12:49:48 +01:00
Martchus 18a3a3f0ea Declare public dependencies 2016-11-08 20:00:20 +01:00
Martchus 992617ccc3 Show relevant dirs when sync complete 2016-11-08 19:44:45 +01:00
Martchus 9e8a92c0ff Process 'ConfigSaved' events 2016-11-01 17:06:31 +01:00
Martchus ad5e724f44 Add SyncthingDirStatus::Unshared 2016-11-01 16:59:58 +01:00
Martchus 98dcfdd609 Specify Breeze being used for fallback icons 2016-11-01 14:07:36 +01:00
Martchus b1a2248a6c Ensure dev status is not reverted 2016-10-30 19:13:18 +01:00
Martchus ba3db70604 Fix reading high traffic values 2016-10-20 23:14:47 +02:00
Martchus 773e90aa1f Update translations 2016-10-17 23:13:40 +02:00
Martchus 138a7cc382 Allow auto-reconnect 2016-10-07 15:11:25 +02:00
Martchus ae325e0a6f Move test data to model
Each subdir should have its own test data
2016-10-06 23:39:56 +02:00
Martchus 73bb321123 Add translations for backend libs 2016-10-05 23:01:53 +02:00