Commit Graph

55 Commits

Author SHA1 Message Date
Martchus 975e86c895 Allow backend libraries to be used from other projects
So far the backend libraries' include paths were relative within this
repository. This means the header files could not be used at their
installed location.

This change replaces them with "<>" includes to fix that problem and adds
a new include directory so building everything at once still works.

With this change it should be easier to actually split some parts into
another repository if this one would become too big.
2021-01-25 19:48:11 +01:00
Martchus a6727b0fa7 Show the connection config name in tooltip when displaying multiple icons 2020-10-19 18:33:10 +02:00
Chih-Hsuan Yen 335e1efafa
Fix building with -DUNIFY_TRAY_MENUS=ON
Ref: 1bdba31c70
2019-08-25 20:41:17 +08:00
Martchus db16727956 Show launcher log also before opening settings dialog 2019-08-02 17:05:48 +02:00
Martchus 2363e9a7d4 Update status icon and tooltip when changing settings
Required because the reconnect interval which might be included
in the tooltip might have changed.
2019-08-01 19:07:58 +02:00
Martchus 1bdba31c70 Improve behavior under Wayland
* Add workaround for using QCursor::pos()
* Set window flags and parent of TrayMenu to it is shown
  like a context menu
2019-07-27 15:04:14 +02:00
Martchus 708334443f Add option to unify tray menus
* Don't create context menu
* Show the "Close" action and the "Internal errors"
  action in the tray widget
* Use this by default on Mac OS
2019-07-17 19:07:58 +02:00
Martchus c521e2f808 Apply clang-format 2019-07-13 13:21:25 +02:00
Martchus 31bb92da89 Show notifications about launcher errors 2019-07-12 20:25:24 +02:00
Martchus 64473df5ba Adapt to changes in c++utilities 2019-06-10 22:48:26 +02:00
Martchus 0e7cc8ba9b Apply changed status colors without restart 2019-05-19 23:11:50 +02:00
Martchus 3bcdf26cca Show global statistics on widgets-based GUI 2019-02-18 00:35:32 +01:00
Martchus adc0fa724e Ensure TrayIcon is immediately visible 2018-12-23 21:17:51 +01:00
Martchus 930691ebdc Rename ErrorViewDialog to InternalErrorsDialog 2018-11-03 18:15:10 +01:00
Martchus 49b33e5afe Ensure errors on first connection after startup are handled 2018-05-15 22:01:03 +02:00
Martchus 1e83fefdf2 Fix compilation without DBus notification support 2018-05-10 13:51:07 +02:00
Martchus 988765f2ba Show new dev/dir notifications in usual tray icon and Plasmoid 2018-05-01 22:27:03 +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 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 1e40f7bb30 Fix including utils.h 2018-01-20 21:34:53 +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 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 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 5046cb3eed Move logic for determine error relevance to InternalError 2017-09-08 17:01:51 +02:00
Martchus f4df2bbf21 Allow opening internal error log via context menu 2017-09-05 00:24:52 +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 7b19be01f2 tray: Allow specifying name of initial connection via CLI
This includes refactoring TrayWidget::applySettings() which
is now a member function and only affects the current instance.

This prevents applying settings on every instance every time
a new tray widget is created.

To apply settings for all tray widgets, the static function
TrayWidget::applySettingsOnAllInstances() is used instead.
2017-08-09 01:11:47 +02:00
Martchus b2aab9eb16 Show number of connected devs in tool tip 2017-05-30 15:06:34 +02:00
Martchus d7e59e2169 Wrap all usages of DBusStatusNotifier correctly 2017-05-11 00:03:09 +02:00
Martchus 732a5fdd8d Apply clang-format 2017-05-01 03:34:43 +02:00
Martchus 1abb8b8a87 Move status info/notification to widgets
* Allow reusing code in other components such
  as Plasmoid
* Separate determining status text and icon
  from displaying notifications
2017-04-25 23:32:40 +02:00
Martchus 49ff5a7b65 Move widgets from tray app to separate lib
So settings pages, web view and other widgets
can be used in other components such as the
Dolphin plugin and Plasmoid, too.
2017-04-23 18:31:18 +02:00
Martchus 8c6b0fd3d4 Move icon rendering to model 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 b2325bf5a0 Allow ignoring Syncthing inavailability after startup 2017-01-14 02:12:38 +01:00
Martchus ee59c2b1c4 Prevent disconnect notification when stopping Syncthing manually 2017-01-10 23:49:34 +01:00
Martchus 5fadf04492 Ensure status icon is updated initially 2017-01-06 14:58:28 +01:00
Martchus 7755e97c5f Only reconnect when relevant settings changed 2017-01-01 19:19:16 +01:00
Martchus 6c99293087 Allow triggering current tray 2016-12-26 19:50:10 +01:00
Martchus 13debf42cc Ensure status icon is updated initially 2016-12-26 00:17:35 +01:00
Martchus 6a154c74af Hide disconnected notification when connected 2016-12-18 16:47:01 +01:00
Martchus 3f95d72b79 Prevent disconnected notification on startup
Happened when Syncthing notifications were
available before the connection was established
2016-12-18 16:47:01 +01:00
Martchus 15f7379f6c Combine use of avail geo and popup for menu pos
* Last fix worked under Openbox/Tint2 but not under
  Plasma 5, this should work under both now
* Under Awesome menu will likely just spawn at cursor
  position
2016-12-13 21:35:55 +01:00
Martchus 985c99922e Just use QMenu::popup() to show TrayMenu
* So it doesn't rely on the available geometry anymore
* Only tested under Openbox/Tint2 so far
2016-12-13 00:02:08 +01:00
Martchus 5d358e31fc Allow reloading log by pressing F5 2016-12-12 23:45:40 +01:00
Martchus 5b4a0ef51e Prevent notification about disconnect on startup 2016-12-12 23:45:40 +01:00
Martchus 2b75f1f3e5 Don't show error for each re-connect attempt 2016-12-12 23:45:40 +01:00
Martchus 203370f933 Allow notifications via D-Bus 2016-12-12 23:45:40 +01:00
Martchus a163c3f046 Dismiss notifications correctly 2016-12-12 23:24:36 +01:00
Martchus d2d80adfe7 Update status icon when new Syncthing notifications available 2016-12-12 23:24:36 +01:00