Commit Graph

92 Commits

Author SHA1 Message Date
Martchus 8ec133e62d Make the Plasmoid's Fork Awesome icon coloring react to theme changes
* Make the Fork Awesome image provider URL a property and change its value
  if the Plasmoid's theme changes to cause Qt Quick to redraw images
* Turn caching of Image objects off so Qt Quick actually fetches the images
  again from the image provider
* Change the URL only back after returning to the event loop; otherwise Qt
  Quick apparently does not react to the property change
* See https://github.com/Martchus/syncthingtray/issues/126
2022-05-30 20:36:03 +02:00
Martchus be9d963a82 Add internal errors to menu/dialog even if the notification is disabled 2022-05-04 00:24:26 +02:00
Martchus db2740d36c Fix compilation against older Plasma versions 2022-03-02 12:22:57 +01:00
Martchus 3e38a9917e Use colors from Plasma theme in Plasmoid
One might configure a light color theme for applications and a dark theme
for Plasma (or vice versa) so this is an important difference, see
https://github.com/Martchus/syncthingtray/issues/126.
2022-02-02 22:38:36 +01:00
Martchus cb1071b3ad Improve Plasmoid to make it look more like official Plasmoids
* Use header (with integrated buttons when shown as part of the system tray
  Plasmoid)
* Use less space so it fits into the system tray plasmoid (at least on a
  full HD screen with 96 dpi)
* Show action for internal errors only if there are internal errors (like
  in the Qt Widgets based GUI)
* Port away from deprecated tab bar (which is not used in official
  Plasmoids anymore as well)
* Simplify code for ensuring the minimum size as configured (still does
  not work within the system tray Plasmoid)
2021-11-30 19:43:26 +01:00
Martchus 0651323da4 Use ForkAwesome consistently in Plasmoid as well 2021-10-15 22:18:30 +02:00
Martchus 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
Hannah Rittich 2968898195 Allow finding of packages in namespaces 2021-10-03 02:07:18 +02:00
Martchus da470c4ddc Ignore Plasma deprecation warnings to still be able to treat warnings as errors
Not sure how to fix the errors because Plasma's own applets haven't been
ported yet.
2021-09-16 22:58:52 +02:00
Martchus 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
Martchus 66448a0774 Adapt to changes in qtforkawesome 2021-09-11 16:45:09 +02:00
Martchus 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
Steve Wills 0976b9d6b7 Fix build with systemd disabled 2021-07-15 10:01:38 -04:00
Martchus 0ef3b80447 Fix typos found via `codespell --skip .git -w` 2021-07-03 19:29:49 +02:00
Martchus cbecf9ccf2 Add an icon for every settings tab 2021-05-07 00:06:25 +02:00
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 57e9865ace Sort devices by name 2020-10-20 19:36:02 +02:00
Martchus 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
Martchus 0b5fb14931 Remove overspecification of Qt version in documentation and comments 2020-09-04 01:13:46 +02:00
Martchus e62a69a2a9 Enable High-DPI scaling/pixmaps in plasmoid
* Fix too small icons, see
  https://github.com/Martchus/syncthingtray/issues/71
* Still needs testing on a real 4k screen
* Hopefully this does not distrub the rest of the shell
2020-07-23 18:47:35 +02:00
Martchus c0e2e0bce1 Apply clang-format 2020-07-12 21:17:34 +02:00
Martchus 5b2147a874 Apply scaling in renderSvgImage() similar to QIcon::pixmap() does 2020-07-12 02:38:57 +02:00
Martchus e8952e77d1 Fix connecting autom. in plasmoid when systemd integration is used 2020-05-25 20:30:39 +02:00
Martchus 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
Martchus 6921f9aa89 Configure bright colors for recent changes model 2020-02-29 13:17:38 +01:00
Martchus cd805e83ba Allow using bright custom color in Dolphin menu
to make it look better when using a dark theme
2020-02-18 20:47:55 +01:00
Martchus c103174609 Make desktop files for Plasma integration from template
* Avoid redundant meta-data
* Take target suffix into account
2020-02-14 23:14:50 +01:00
Martchus 6026339c83 Show recent changes 2020-01-18 16:43:13 +01:00
Martchus e76d4afff5 Improve layout of Plasmoid appearance settings page 2020-01-11 21:42:25 +01:00
Martchus addba5a87c Improve layouts of settings pages
Especially prevent certain elements from expanding (the
additional space between the elements looks weird).
2020-01-11 20:53:07 +01:00
Martchus 32f78b74fd Overhaul systemd integration, support system-wide units
* Lazy initialize systemd interface and don't initialize it
  at all if the unit name is empty
* Allow to supervise/control system-wide units in addition to
  user units (see https://github.com/Martchus/syncthingtray/issues/61)
* Avoid redundant code
2019-12-18 00:18:46 +01:00
Martchus 7c3a9634ae Enable wrapping of longer labels of plasmoid appearance settings 2019-12-15 20:21:51 +01:00
Martchus 32996b8894 Improve sizing of Plasmoid 2019-11-30 18:47:58 +01:00
Martchus 47fae26975 Construct QList for pages from initializer list 2019-08-10 22:04:39 +02:00
Martchus 1982d26295 Remove code duplication in SyncthingApplet 2019-08-01 19:08:58 +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 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
Martchus 62fc662692 Add tooltips to plasmoid statistics 2019-07-21 22:33:52 +02:00
Martchus 335913c8ca Fix build without systemd support 2019-07-13 13:21:02 +02:00
Martchus 2112b00347 Allow to show start/stop button for launcher 2019-07-12 20:32:55 +02:00
Martchus 6ac633366e Don't use functions obsoleted in Qt 5.13.0 2019-06-25 14:37:14 +02:00
Martchus dc7d9b815f Adapt to changes in c++utilities 2019-06-14 19:15:26 +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 72b72b26ae Don't abuse scanning icon to get default logo 2019-05-19 18:04:28 +02:00
Martchus 05da0465a7 Allow customizing status icon colors 2019-05-19 17:57:37 +02:00
Martchus 8dacbaa8d7 Adapt to new c++utilities API 2019-05-05 18:42:19 +02:00
Martchus 0049d96bca Adapt to c++utilities API changes 2019-05-04 22:18:31 +02:00
Martchus d88df866d2 Adapt to c++utilities v5 2019-05-04 21:05:21 +02:00
Martchus 3e97a65bae Use font awesome icons for global stats in plasmoid 2019-02-27 20:42:41 +01:00