Commit Graph

314 Commits

Author SHA1 Message Date
Martchus 5ba07d62ee Update translations 2022-02-02 22:39:04 +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 30adde6432 Lower needlessly high version requirement in Plasmoid code 2022-01-24 15:08:12 +01:00
Martchus 692fdb0381 Update translations 2022-01-11 11:24:17 +01:00
Martchus c44f5e60cf Remove ugly spacing between list and tab buttons in Plasmoid 2022-01-02 01:33:29 +01:00
Martchus 2d27e0758a Improve overflow behavior of statistics in Plasmoid 2022-01-02 01:26:16 +01:00
Martchus 0243068a20 Remove "Letzte" in "Letzte Änderungen" as it takes too much space 2021-12-03 22:00:05 +01:00
Martchus e99f6c13b9 Updated translations 2021-12-01 18:58:52 +01:00
Martchus b02a3a0c9b Improve tab bar of Plasmoid (use footer and improve sizing of elements) 2021-12-01 18:53:23 +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 811c07da6a Fix displaying issues of plasmoid
* Set a certain size for the icons to avoid them from being too big or too
  small
* Fix search button
2021-11-13 22:51:04 +01:00
Martchus 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
Martchus 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
Martchus de3205df00 Use ForkAwesome icons also in RecentChangesPage of Plasmoid 2021-10-15 23:16:58 +02:00
Martchus 4dc9f08639 Update translations 2021-10-15 22:21:40 +02:00
Martchus 0651323da4 Use ForkAwesome consistently in Plasmoid as well 2021-10-15 22:18:30 +02:00
Martchus 09d5c5589e Add missing verb in `plasmoid/testing.md` 2021-10-10 23:22:34 +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
Julianne420 ddefa35daa Add zh_CN translation 2021-10-07 01:20:24 +08:00
Hannah Rittich 2968898195 Allow finding of packages in namespaces 2021-10-03 02:07:18 +02:00
Martchus 4517ea41b6 Update translations 2021-10-02 20:31:56 +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 04a57c7e9f Fix ForkAwesome icons in plasmoid 2021-09-11 20:39:37 +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
Martchus fb09378935 Ensure files for mocked configuration are found when testing plasmoid 2021-08-02 23:38:58 +02:00
Martchus 95800eb1ca Fix setting folder icon in plasmoid's downloads page 2021-08-02 23:38:18 +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 9f7a19eabc Update translations 2021-07-03 18:50:59 +02:00
Martchus 1ccac1e145 plasmoid: Use `data-error` icon instead of the old `emblem-important`
Loading the icon for the button from resources ceased to work (maybe when
switching to `PlasmaComponents3.ToolButton`). This change works around the
problem and the old icon no longer needs to be bundled.
2021-07-01 18:26:09 +02:00
Martchus 0c475f5b7e Update translations 2021-05-27 18:16:22 +02:00
Martchus cbecf9ccf2 Add an icon for every settings tab 2021-05-07 00:06:25 +02:00
Martchus 6c12f18eaf Update translations 2021-03-06 16:26:23 +01:00
Martchus 8e51e641ab Improve documentation about plasmoid testing 2021-02-12 20:31:29 +01:00
Martchus 0fc44a9142 Disable pause/resume button within GUI in consistency with official GUI 2021-02-12 20:31:05 +01: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 66b6c224dc Update translations 2020-12-01 18:50:16 +01:00
Martchus 81e9d534e7 plasmoid: Use QQ2 combo box (Plasma components 3 version clips end of text) 2020-11-30 18:25:38 +01:00
Martchus 9df2a17e5c Port Plasmoid to QCC2/PlasmaComponents3 where possible
The following uses of QCC1/PlasmaComponents2 remain:

```
…/DetailView.qml:import org.kde.plasma.components 2.0 as PlasmaComponents // for Menu and MenuItem
…/DevicesPage.qml:import org.kde.plasma.components 2.0 as PlasmaComponents  // for Menu and MenuItem
…/DirectoriesPage.qml:import org.kde.plasma.components 2.0 as PlasmaComponents  // for Menu and MenuItem
…/DownloadsPage.qml:import org.kde.plasma.components 2.0 as PlasmaComponents  // for Menu and MenuItem
…/FullRepresentation.qml:import org.kde.plasma.components 2.0 as PlasmaComponents // for vertical TabBar
…/RecentChangesPage.qml:import org.kde.plasma.components 2.0 as PlasmaComponents  // for Menu and MenuItem
…/TopLevelView.qml:import org.kde.plasma.components 2.0 as PlasmaComponents // for Highlight and DialogStatus.Closed (used with Menu and MenuItem)
```
2020-11-27 19:09:47 +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 33b8c8df85 Fix copying device ID in Plasmoid 2020-10-08 16:39:22 +02:00
Martchus ce46931631 Update translations 2020-10-07 21:53:39 +02:00
Martchus 555abd8667 Improve plasmoid testing (documentation) 2020-10-07 21:42:50 +02:00
Martchus aac87621dc Streamline context menus of regular tray application and Plasmoid
* Support triggering actions via the context menu in the regular tray like
  it is already possible in the Plasmoid
* Support copying via the context menu in the Plasmoid like it is already
  possible in the regular tray
* Reduce repetition of coding patterns using templates
2020-10-07 21:42:50 +02:00
Martchus 0b5fb14931 Remove overspecification of Qt version in documentation and comments 2020-09-04 01:13:46 +02:00
Martchus f952ca6ba1 Fix warning about binding loop of with property in Plasmoid code
Specifying the with explicitely on every level seems to fix this. Not sure
whether it is the best solution but Qt 6 will likely mess up everything
anyways so let's not put further effort into the QML stuff at this point.
2020-08-18 01:27:48 +02:00
Martchus 80704e0028 Adapt test environment for Plasmoid
Apparently just setting HOME does not work anymore. At least in my Plasma
setup XDG_DATA_HOME and XDG_CONFIG_HOME are now interfering. This change
introduced an extra helper script to take care of the environment variables
which unsets the XDG_… variables and also takes care of QT_PLUGIN_PATH by
the way.
2020-08-18 01:20:06 +02:00
Martchus f837284212 Update translations 2020-08-11 23:20:22 +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 cb9209594d Update translations 2020-06-02 18:28:46 +02:00
Martchus a1882317e1 Use default Syncthing icon in Plasmoid context menu
It seems like `plasmoid.nativeInterface.syncthingIcon` doesn't work.
2020-05-31 18:15:55 +02:00
Martchus 5b6b3af5fc Streamline menu entry to open Syncthing in Plasmoid with other places 2020-05-31 00:24:58 +02:00
Martchus 66f8555d0a Support "Recent changes" tab by keyboard navigation in Plasmoid 2020-05-26 18:12:16 +02:00
Martchus e8952e77d1 Fix connecting autom. in plasmoid when systemd integration is used 2020-05-25 20:30:39 +02:00
Martchus 14ddb6d035 Hide connect button while connecting in plasmoid like in widgets-based app 2020-05-25 20:30:39 +02:00
Martchus e44a523e3a Update translations 2020-05-05 19:02:30 +02:00
Martchus 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
Martchus a2695311d4 Fix QML warnings in TinyButtonStyle.qml 2020-04-27 23:47:52 +02:00
Martchus 8971f294e8 Improve Plasmoid's connections menu further 2020-04-14 18:15:30 +02:00
Martchus 50a3299254 Use good old for loop to populate connections menu of plasmoid
It seems like the "Instantiator" does not do the right thing here as for
the QCC1 menu leading to segfaults.
2020-04-13 03:26:10 +02:00
Martchus fca8ccad4d Use PlasmaComponents.Menu instead of ugly default QCC1 Menu 2020-04-13 02:46:13 +02:00
Martchus 356a4d7304 Fix resume/pause icon in plasmoid 2020-04-13 02:04:20 +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 d50cdf3a06 Use consistent icon for rescanning all folders in plasmoid 2020-03-26 22:48:54 +01:00
Martchus 5e773619cb Prevent installing .gitignore as part of the plasmoid package 2020-03-18 17:26:22 +01:00
Martchus b8edea29f9 Update translations 2020-03-01 22:06:18 +01: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 94753de797 Fix start/stop button tooltip for system-wide systemd service 2020-02-02 19:51:16 +01:00
Martchus dab3fd7e31 Update translations 2020-01-18 16:47:51 +01:00
Martchus 10fd09901b Prevent warning in Plasmoid
This line might have done something at some point so let's
not completely remove it for backwards compatibility.
2020-01-18 16:43:13 +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 04b6ff9bf1 Update translations 2019-12-18 00:31:53 +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 d5cd80fe5b Update translations 2019-11-30 18:48:05 +01:00
Martchus 32996b8894 Improve sizing of Plasmoid 2019-11-30 18:47:58 +01:00
Martchus 3586bbf032 Amend commend regarding Plasma workaround
It seems like version 5.17.0 is already affected.
2019-10-31 18:49:49 +01:00
Martchus e31edb5579 Document testing within the real Plasma shell 2019-10-27 19:17:37 +01:00
Martchus e063dc6c18 Hack around plasmashell 5.17.1 ignoring parent's height 2019-10-27 18:54:52 +01:00
Martchus 38987707bd Update translations 2019-10-09 23:23:02 +02:00
Martchus e7f5dc9b48 Ensure the plasmoid tooltip has the right size
This is required when a tooltip from another plasmoid
has been shown directly before.
2019-09-21 16:52:49 +02:00
p-bo 2ddbbc6c79
Added Czech localization
Create syncthingplasmoid_cs_CZ.ts
2019-08-20 21:38:08 +02:00
Martchus 22af85aaf2 Update README.md
* Update Plasmoid screenshot
* Add Xfce to tested platforms
2019-08-12 00:33:23 +02:00
Martchus 47fae26975 Construct QList for pages from initializer list 2019-08-10 22:04:39 +02:00
Martchus 1c13908381 Format QML files 2019-08-08 23:10:15 +02:00
Martchus 072bef22c5 plasmoid: Prevent overlapping status info 2019-08-08 21:51:27 +02:00
Martchus b9402ce374 plasmoid: Ensure keyboard events can be received after initialization 2019-08-08 21:35:56 +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 03d15d5bfb Update notes about Plasmoid testing 2019-07-26 22:02:27 +02:00
Martchus 205189c34a Update translations 2019-07-21 22:37:23 +02:00
Martchus 62fc662692 Add tooltips to plasmoid statistics 2019-07-21 22:33:52 +02:00
Martchus b9e9d76594 Update translations 2019-07-13 13:38:51 +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 4896fc0342 Add screenshot with customized icons 2019-05-28 17:59:43 +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 3ff8c2b66c plasmoid: Use tiny button for search 2019-03-20 17:37:34 +01:00
Martchus a4c2074012 plasmoid: Fix width of detail items
So the alignment and text eliding actually has effect.
2019-03-19 23:07:32 +01:00
Martchus 6c6830936d plasmoid: Add button for filter 2019-03-19 23:07:22 +01:00
Martchus c523f627da Update screenshot, remove outdated ones 2019-03-09 14:55:29 +01:00
Martchus c8f86a3d2e Put plasmoid plugin under plasma/applets 2019-02-27 21:21:07 +01:00
Martchus a6380947ea Fix wrong translation and update translations 2019-02-27 20:45:05 +01:00
Martchus 3e97a65bae Use font awesome icons for global stats in plasmoid 2019-02-27 20:42:41 +01:00
Martchus 2ab88c5766 Add font awesome icons to models
So it looks a bit more like the official UI.
2019-02-27 20:41:50 +01:00
Martchus b0c4c122a4 Use good old emblem-important icon
The new version from Breeze doesn't look nice in the way the
plasmoid uses this icon.
2019-02-26 17:43:28 +01:00
Martchus 33e55cc49f Update screenshot of Plasmoid 2019-02-23 13:56:16 +01:00
Martchus a3a09297f7 Render font awesome icons in color from QPalette
Since theres apparently no API in the Qt Svg module to support
this the change introduced here simply replaces in the SVG
document itself.
2019-02-23 13:55:46 +01:00
Martchus 78d4553104 Update translations 2019-02-18 00:41:17 +01:00
Martchus 06072df707 Show button for about dialog in plasmoid as well 2019-02-17 23:49:39 +01:00
Martchus 2b3a27d537 Replace "Open web UI" with "Open Syncthing" 2019-02-17 23:49:22 +01:00
Martchus e56c950100 Show overall statistics in plasmoid 2019-02-17 23:46:03 +01:00
Martchus e475454c2d plasmoid: Fix setting initial size
Some change in Qt or Plasma prevents the old way of setting
it to work (using onVisibleChanged). Using a Loader and
onLoaded seems to work better.
2019-02-12 00:23:51 +01:00
Martchus 326f03b604 Apply cmake-format 2019-02-06 17:36:14 +01:00
Martchus d803f83d0f Update translations 2018-11-03 21:41:44 +01:00
Martchus 4a42a3f0c0 Fix and refactor directory error handling
* Rely not only on the FolderErrors event
* Request pull errors when opening the dialog
* Use "pullErrors" from FolderSummary
* Move code for directory error dialog into
  its own class

This should fix that sometimes obsolete errors
were still displayed or actually present errors
missing.
2018-11-03 21:30:17 +01:00
Martchus 930691ebdc Rename ErrorViewDialog to InternalErrorsDialog 2018-11-03 18:15:10 +01:00
Martchus 900377b036 Stop web view immediately if in background and user disables this 2018-10-28 14:27:25 +01:00
Martchus ece582db04 Fix visibility of "Show errors" button in plasmoid 2018-10-24 21:35:08 +02:00
Martchus 98a6b77013 Use right status in SyncthingApplet::handleConnectionStatusChanged() 2018-10-10 23:37:24 +02:00
Martchus 533a5d0939 Use override 2018-10-10 21:26:46 +02:00
Martchus dda2c411fb Update translations 2018-10-10 21:18:25 +02:00
Martchus 8173cc99e8 Move ChecklistModel (de)serialization to qtutilities 2018-10-10 21:00:13 +02:00
Martchus 87a10c5b33 Allow hiding Plasma applet in certain states
See https://github.com/Martchus/syncthingtray/issues/23
2018-10-10 17:48:48 +02:00
Martchus 587cce4216 Fix plasmoid build error when configured without web view
See https://github.com/Martchus/syncthingtray/issues/19
2018-08-24 15:34:36 +02:00
Martchus af120f1ae1 Update translations 2018-08-05 15:21:12 +02:00
Martchus 7e09d9b707 plasmoid: Emit event when updating connected devs correctly 2018-08-04 15:47:19 +02:00
Martchus 321d6fdd60 Fix QML warnings regarding use of anchors within layout
'Detected anchors on an item that is managed by a
layout. This is undefined behavior; use Layout.alignment
instead.'
2018-06-30 17:45:03 +02:00
Martchus db4b032179 Show connected device names in additional status 2018-06-27 17:38:22 +02:00
Martchus e7d365f849 Initialize SyncthingNotifier correctly in Plasmoid 2018-05-15 22:27:54 +02:00
Martchus 49b33e5afe Ensure errors on first connection after startup are handled 2018-05-15 22:01:03 +02:00
Martchus 9ce8c593a2 Require qtutilities 5.10.0 for AboutDialog overload 2018-05-08 19:20:05 +02:00