Commit Graph

106 Commits

Author SHA1 Message Date
28aa9a516c Have directory ID still accessible in recent changes despite showing name
Show it as tool tip and allow copying it via the context menu
2022-04-09 14:52:00 +02:00
3d2930cb1d Use file-text icon for log as it looks more in-line with the other icons 2021-11-13 22:49:45 +01:00
e81166cd79 Fix several warnings when building against Qt 6 2021-11-04 00:16:27 +01:00
5b9b69625b Remove surplus brace in about dialog 2021-11-04 00:04:41 +01:00
c1f3e57a9c Use ForkAwesome icons in consistency with Syncthing's official GUI
* Use single cog for settings (instead of cogs)
* Use "refresh" for re-scanning all dirs (instead of search)
2021-11-02 18:01:00 +01:00
7b6121cb05 Use ForkAwesome icons more consistently in tray widget
Mixing ForkAwesome icons too much with the regular icon theme doesn't look
good (depending on the theme) so let's prefer ForkAwesome icons within the
tray widget which already uses ForkAwesome in some places like certain
buttons and models. This makes it also look more in-line with Syncthing's
web UI. For context menus and dialogs let's prefer system icons because
there are hardly any ForkAwesome icons used/required so far and it is maybe
nicer to be in-line with the system here.
2021-10-15 00:23:22 +02:00
3bf50fb414 Use Syncthing icon from ForkAwesome for buttons/menus
This should look more consistent than abusing the state-specific "idling"
icon.
2021-10-10 20:44:22 +02:00
0b801bc505 Make internal errors also accessible when starting with --windowed
* Show the button for the internal errors dialog in the tray widget like it
  is done when the `UNIFY_TRAY_MENUS` config is activated
2021-10-09 01:14:54 +02:00
f384d2a496 Use "qrcode" icon from ForkAwesome
It fits better than "view-barcode" from the icon theme. This also tests
using ForkAwesome icons via the custom icon engine. Unfortunately this
does not seem to work within the Plasmoid so far.
2021-09-15 20:37:21 +02:00
66448a0774 Adapt to changes in qtforkawesome 2021-09-11 16:45:09 +02:00
43fcb9f71b Migrate to ForkAwesome
* FontAwesome uses a propritary build system so let's move to its fork
  ForkAwesome similar to Syncthing
    * See https://github.com/syncthing/syncthing/pull/5237
* Bundle the font file instead of having the SVGs directly within
  Syncthing Tray's own repository
2021-09-11 02:20:38 +02:00
0ef3b80447 Fix typos found via codespell --skip .git -w 2021-07-03 19:29:49 +02:00
0faacaa7c8 Terminate Syncthing gracefully via REST-API on non-UNIX platforms
If there's a configured and local Syncthing connection and we're on a
non-UNIX platform which doesn't support SIGTERM (basically Windows) it
makes sense to use the REST-API instead. That's likely better than just
terminating the process forcefully.

This doesn't cover the stop button within the launcher settings yet because
from this context is isn't clear which connection is relevant as there can
be multiple tray icons/widgets but only one settings page.
2021-06-21 23:18:51 +02:00
c51379cdbd Remove obsolete comment 2021-03-31 22:47:10 +02:00
3fb621875c Don't assign minimum size if dialog would overflow
This gets a little bit too small and with "Consider window frame size
within centerWidgetAvoidingOverflow()" in qtutilities it shouldn't be
required anymore.
2021-03-24 21:26:15 +01:00
8c4e2168bc Avoid misplaced/clipped dialogs when default dialog size doesn't fit screen
https://github.com/Martchus/syncthingtray/issues/89
2021-03-24 14:40:59 +01:00
f75966aadc Fix warnings 2021-03-20 22:39:40 +01:00
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
da911c6350 Refactor overall status compution
* Allow configuring the information to consider for computing the overall
  status via SyncthingStatusComputionFlags
    * Add flag to allow considering the status of remote devices for
      https://github.com/Martchus/syncthingtray/issues/74
    * Show only plain "idle" status when no flags are present for
      https://github.com/Martchus/syncthingtray/issues/76
* Set the default flags to keep the default behavior as-is
2020-12-31 02:48:18 +01:00
57e9865ace Sort devices by name 2020-10-20 19:36:02 +02:00
7ada03b00b Apply clang-format 2020-10-19 18:33:28 +02:00
a6727b0fa7 Show the connection config name in tooltip when displaying multiple icons 2020-10-19 18:33:10 +02:00
4078e6ff2a Prevent crash deleting s_dialogParent 2020-10-18 17:13:52 +02:00
4040a4e136 Hide connection status from settings when there are multiple tray icons 2020-10-18 17:02:12 +02:00
2c1dbff82b Allow specifiying multiple connection configurations 2020-10-18 16:28:17 +02:00
3e1beaa11d Sort directories by name/ID
* Use the name as sorting criteria and fall back to the ID if there's no
  name
* Use new SyncthingSortFilterDirectoryModel also for Plasmoid's filtering
* See https://github.com/Martchus/syncthingtray/issues/75
2020-10-18 15:48:02 +02:00
3b49e9e312 Support Qt 6 (commit 174154b) 2020-09-04 01:09:18 +02:00
5b2147a874 Apply scaling in renderSvgImage() similar to QIcon::pixmap() does 2020-07-12 02:38:57 +02:00
65b3261320 Hide connections menu when only one connection is configured
* Make UI look cleaner for the common case of only one configuration
* Save some width to help with
  https://github.com/Martchus/syncthingtray/issues/65 a little bit
2020-04-28 00:10:04 +02:00
ed4d1fc213 Use idle status icon for button to open Syncthing web UI
That looks more consistent, especially when using a dark color theme
where the default Syncthing icon doesn't fit in very well.
2020-04-12 23:16:26 +02:00
6921f9aa89 Configure bright colors for recent changes model 2020-02-29 13:17:38 +01:00
94753de797 Fix start/stop button tooltip for system-wide systemd service 2020-02-02 19:51:16 +01:00
13e0732168 Show context menu on recent changes view 2020-01-23 20:07:11 +01:00
6026339c83 Show recent changes 2020-01-18 16:43:13 +01:00
1a1b907f15 Save settings immediately to disk when applied
* See https://github.com/Martchus/syncthingtray/issues/59
* QCoreApplication::aboutToQuit() does not work reliably but terminating
  only at the end of the session is a common use-case for the tray
  application. So workaround the problem by saving the settings
  immediately.
* The plasmoid already does this anyways.
2019-10-06 17:58:08 +02:00
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
19816437ea Use a different parent for dialogs
This allows customizing the tray menu/widget using style sheets
without affecting the dialogs.
2019-07-31 20:47:19 +02:00
353f1e2463 Allow to distinguish icon colors within UI and system tray
This is useful because sometimes the background color of the system
tray is dark but the overall system UI still uses a light theme.

For the Plasmoid this should never be the case, though. Hence the
extra settings are not available there.
2019-07-31 20:16:43 +02:00
9b8191c105 Use consistent prefix for static member variables 2019-07-27 15:11:50 +02:00
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
c378b17de4 Don't abuse organization domain for website in AboutDialog 2019-07-20 20:32:15 +02:00
a1658dcf83 Apply clang-format 2019-07-17 23:14:34 +02:00
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
fe332078f1 Improve taking the launcher status into account when connecting
* Take the time the launcher is active into account (in the same
  way as it is done for the systemd service)
* Fix case when systemd service would be relevant but configured
  to consider the launcher status
2019-07-13 17:59:48 +02:00
b9e9d76594 Update translations 2019-07-13 13:38:51 +02:00
c521e2f808 Apply clang-format 2019-07-13 13:21:25 +02:00
335913c8ca Fix build without systemd support 2019-07-13 13:21:02 +02:00
2112b00347 Allow to show start/stop button for launcher 2019-07-12 20:32:55 +02:00
6ac633366e Don't use functions obsoleted in Qt 5.13.0 2019-06-25 14:37:14 +02:00
64473df5ba Adapt to changes in c++utilities 2019-06-10 22:48:26 +02:00