Commit Graph

289 Commits

Author SHA1 Message Date
Martchus 3bbbab035c Update translations 2022-08-25 22:33:59 +02:00
Martchus d079d526ec Avoid ugly padding next to scroll bar in Plasmoid
It is actually just the normal marging/padding Plasmoids normally have but
with the scroll bar it doesn't look good.

The margins would be automatically collapsed if the scroll view was the
immediate content item. However, that's not the case so we need to set the
according property manually using `Plasma.Representation`.
2022-08-25 22:33:30 +02:00
Martchus 01f722c690 Unify code for about dialog image and attribution
It is the same for all components so define it at one place.
2022-08-25 20:35:02 +02:00
Martchus 95ff84afb8 Update translations 2022-08-02 20:17:35 +02:00
Martchus 788a5b2947 Allow opening dir in file browser if path contains tilde
See https://github.com/Martchus/syncthingtray/issues/148
2022-08-02 20:15:24 +02:00
Martchus a49da56829 Update translations 2022-07-16 19:37:00 +02:00
Martchus 2139b204e3 Determine whether to use bright custom colors automatically 2022-07-16 19:28:31 +02:00
Martchus eb94cfb3ed Improve screenshot-related section headings in README
* Don't put customized icons under Plasma section; it is not
  Plasma-specific
* Rename "Under Plasma 5" to "Plasmoid" to be more specific
2022-06-06 18:27:09 +02:00
Martchus 4a63fbdf74 Update Plasmoid screenshot as it has changed a lot 2022-06-06 18:25:26 +02:00
Martchus 3945ac3471 Update translations 2022-05-30 20:36:03 +02:00
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 637bb39806 Fix scroll view of Plasmoid 2022-05-23 23:20:51 +02:00
Martchus 204139ba37 Update translations 2022-05-05 20:52:16 +02:00
Martchus 4c920b6418 Avoid further QML warnings of Plasmoid
This should avoid:
```
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid-git/contents/ui/main.qml:13:34: QML FullRepresentation: Binding loop detected for property "implicitWidth"
…
qml: PlasmaExtras.ScrollArea is deprecated. Use PlasmaComponents3.ScrollView instead.
…
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid-git/contents/ui/TabButton.qml:27:13: Unable to assign [undefined] to QFont
…
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid-git/contents/ui/ToolButton.qml:23:13: Unable to assign [undefined] to QFont
```
2022-05-05 20:52:04 +02:00
Martchus 56bc9b09d1 Update translations 2022-05-05 18:57:08 +02:00
Martchus dcef2099e5 Remove wrong anchors in Plasmoid leading to QML warnings
This should prevent the following warnings:
```
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:284:17: QML DevicesPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:287:17: QML DownloadsPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:290:17: QML RecentChangesPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:281:17: QML DirectoriesPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:284:17: QML DevicesPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:287:17: QML DownloadsPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:290:17: QML RecentChangesPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
```

See https://github.com/Martchus/syncthingtray/issues/133
2022-05-05 18:56:53 +02:00
Martchus b2d81d05e6 Update translations 2022-05-04 01:07: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 5eb5a6dc60 Update translations 2022-05-03 23:27:29 +02:00
Martchus 329a928476 Fix too small tool buttons in Plasmoid
See https://github.com/Martchus/syncthingtray/issues/129
2022-04-09 14:59:34 +02:00
Martchus 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
Martchus 1adfe77e8d Update translations 2022-04-05 19:53:25 +02:00
Martchus 3d5286bf26 Avoid mixing different icon types in context menu 2022-03-20 17:01:48 +01:00
Martchus 8e6bd62030 Update translations 2022-03-15 01:10:37 +01:00
Martchus db2740d36c Fix compilation against older Plasma versions 2022-03-02 12:22:57 +01:00
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