Martchus
9220d66add
Allow pinning tray menu (still experimental)
2022-10-07 22:59:17 +02:00
Martchus
d82bc710fd
Allow using system icons instead of ForkAwesome icons
...
* Allow using icons from freedesktop.org icon theme for most ForkAwesome
icons if available
* Let's not use it for the nested list of details in the models for now
* See https://github.com/Martchus/syncthingtray/issues/121
2022-10-07 00:20:50 +02:00
Martchus
3f5bc4d772
Fix inclusion of Connection::addConfigFromWizard()
2022-10-04 14:15:58 +02:00
Martchus
89290b99d4
Use quickwizard icon as it looks more apprpriate in higher sizes
...
That's at least the case for the Breeze icon theme.
2022-10-02 22:40:48 +02:00
Martchus
4896261ef9
Allow opening launcher settings from wizard in case of an error to check logs
2022-10-02 20:33:07 +02:00
Martchus
722e9f6e7d
Avoid greeting new users with "insufficient configuration" error
2022-10-02 19:45:22 +02:00
Martchus
b0d1197cb7
Implement launcher and systemd configuration in wizard
2022-10-02 19:24:26 +02:00
Martchus
99872b262e
Move setting connection config from wizard into its own function
2022-10-02 14:41:28 +02:00
Martchus
bd5b93d311
Implement completion of wizard
...
Applying settings is still only implemented for one of the cases.
2022-10-01 22:25:33 +02:00
Martchus
442aee992a
Unify code for showing wizard
2022-10-01 20:25:21 +02:00
Martchus
f290dec65c
Develop wizard further
2022-10-01 18:11:48 +02:00
Martchus
9865b2286f
Develop wizard further
...
* Add page to apply settings
* Add page to show final result
* Fix updating systemd checkbox (`isVisible()` did not work because when
the function is running the whole page is not visible)
* Enable systemd integration by default if either the user service or the
system service are running
* Fix typo
2022-09-17 23:10:58 +02:00
Martchus
5554ba4ffa
Set window icon of wizard
2022-09-11 12:58:47 +02:00
Martchus
ab74142dc2
Add missing include for dialog utils
2022-09-06 16:58:25 +02:00
Martchus
f7af2d5c7d
Fix compilation of new wizard code against Qt 6
2022-09-06 16:24:53 +02:00
Martchus
66948336d5
Allow to disable tab texts (to shown only icons anymore)
...
When configuring a smaller size for the Qt Widgets based UI it might be
preferred to show only the icons instead of having the tab buttons
overflow.
2022-09-05 21:56:22 +02:00
Martchus
fd377cc5ac
Increase default size to avoid overflow of tab buttons by default
2022-09-05 21:19:22 +02:00
Martchus
c0a6482c9d
Fix typos in naming of wizard UI widgets
2022-09-03 21:36:57 +02:00
Martchus
ff68dff5a0
Add autostart wizard page
2022-09-03 21:36:57 +02:00
Martchus
25b9116250
Show only relevant options in wizard and improve UI for displaying details
2022-08-27 23:35:15 +02:00
Martchus
468293c2b1
Show welcome page always as first page of the wizard
...
Otherwise the wizard would immediately start when accessed via settings
which is not very nice. Of course the instructions in the welcome page need
to be slightly adjusted.
2022-08-27 19:19:03 +02:00
Martchus
a435cab604
Allow starting wizard from settings
2022-08-27 15:06:55 +02:00
Martchus
6941a1195d
Ensure the wizard's size is big enough
2022-08-25 21:47:20 +02:00
Martchus
9d28fbbefc
Ensure icons in wizard's welcome page are present
...
* Provide icons for command link buttons because it looks rather bad when
some of them are missing in the user's icon theme and are therefore not
displayed at all
* Add icons to lists for bundling icons
2022-08-25 21:35:22 +02:00
Martchus
f496e42006
Develop UI of wizard further
...
* Declare widgets for main config page via XML
* Add radio/check boxes for available options
* Improve formatting of report
2022-08-23 21:07:06 +02:00
Martchus
c31b7b9ca8
Refactor wizard code
...
* Move code for setup detection into its own class
* Use separate wizard page to show setup detection report
2022-08-23 18:19:47 +02:00
Martchus
352d161144
Check for default launcher and service configuration in wizard
2022-08-23 12:31:43 +02:00
Martchus
a48cf61333
Detect current Syncthing setup as first step of the wizard
2022-08-22 23:48:18 +02:00
Martchus
800cbcc286
Add hidden flag to enable WIP features
...
Supposed to be used for the wizard while it is WIP.
2022-08-22 21:59:34 +02:00
Martchus
c9ac1c794b
Allow portable configuration via `QtUtilities::getSettings()`
...
See https://github.com/Martchus/tageditor/issues/88
2022-08-20 16:19:08 +02:00
Martchus
a733eddb12
Do not use `APP_NAME` in wizard except for title, avoid usless `.arg()`
...
It is not a good idea to use `APP_NAME` because it might be overriden (e.g.
"Syncthing Tray (git)" which would look rather out of place here.
2022-08-08 23:05:55 +02:00
Martchus
2e14d9d62c
Update translations
2022-08-06 21:22:20 +02:00
Martchus
394af9bce7
Improve first launch message in preparation for adding a setup wizard
2022-08-06 21:08:55 +02:00
Martchus
2139b204e3
Determine whether to use bright custom colors automatically
2022-07-16 19:28:31 +02:00
Martchus
97a8dc3f99
Apply clang-format
2022-07-16 12:30:51 +02:00
Martchus
d735455c2a
Add button to reload all unit files
2022-07-04 19:55:58 +02:00
Martchus
05e98e22dd
Prevent spawning a second tray icon when autostart is enabled
...
Otherwise a second icon is created when starting a second X11 session, see
https://github.com/Martchus/syncthingtray/issues/142 .
Not sure whether this is relevant under Windows and Mac so this change is
only covering the *.desktop file.
2022-06-16 17:49:02 +02:00
Martchus
4b174eae20
Add option to ignore folder "out-of-sync" errors for overall status
...
* Add option to ignore unread notifications as well to cover all those
extra cases
* See https://github.com/Martchus/syncthingtray/issues/141
2022-06-07 10:42:22 +02:00
Martchus
1fad0baa0d
Avoid non-POD global static in `widgets/settings/settings.cpp`
2022-06-07 10:10:12 +02:00
Martchus
3b89c58ba4
Add note about disabling notifications of internal errors
2022-05-04 00:54:17 +02:00
Lynnesbian
16baed6e27
fix typo ("settinngs" -> "settings")
2022-01-23 03:38:42 +10:00
Martchus
7cf56732bd
Remove `-no-console` from default args on non-Windows platforms
...
* According to https://docs.syncthing.net/users/syncthing.html this flag is
Windows-only.
* See https://github.com/Martchus/syncthingtray/issues/106
2021-08-20 14:16:48 +02:00
Martchus
4c6315b450
Terminate Syncthing gracefully via REST-API on non-UNIX platforms (2)
...
A follow up to 0faacaa7c8
to cover the stop button within the launcher
and terminating Syncthing on shutdown/exit. To find the relevant connection
the connection settings are searched for a local URL where the port matches
the port from the Syncthing process log.
2021-07-15 02:38:26 +02:00
Martchus
69f466be66
Fix crash when systemd unit status changes when settings page has already been destroyed
2021-07-15 02:21:18 +02:00
Martchus
9fc96a847a
Add button to show Syncthing releases/downloads in launcher
2021-07-03 18:44:37 +02:00
Martchus
9ce9b11ba4
Use Boost.Process for launcher to cope with further sub processes
...
* Use a process group / job object via Boost.Process to be able to
terminate sub processes as well
* Do not try to stop the process gracefully under Windows by posting
WM_CLOSE because this has no effect on Syncthing anyways
* See https://github.com/Martchus/syncthingtray/issues/94
2021-06-16 22:44:48 +02:00
Martchus
91c24753e6
Polish appearance settings tab a little bit
2021-05-07 00:26:51 +02:00
Martchus
d1f0519411
Avoid expanding info text in connection settings
2021-05-07 00:12:05 +02:00
Martchus
cbecf9ccf2
Add an icon for every settings tab
2021-05-07 00:06:25 +02:00
Martchus
ac033517cc
Allow configuring rendering size of status icons
...
The default of 32 px should be fine in most cases and when the UI is scaled
it is also automatically scaled. However, if one has a tray area or Plasma
panel with extraordinarily big icons like latte-dock it might still be
required to render icons at a higher resolution. This is hard to determine
programmatically so I'm just adding a manual setting.
2021-04-21 18:23:20 +02:00
Martchus
18352a6ce1
Show maximize button on settings dialog
...
So it looks nicer combined with the previous commit.
2021-03-24 15:02:05 +01:00
Martchus
f0de7d204a
Fix warning about flags for setFrameStyle()
2021-03-23 15:23:19 +01:00
Martchus
f75966aadc
Fix warnings
2021-03-20 22:39:40 +01:00
Martchus
8ec9038b2c
Better decouple syncthingwidgets from libsyncthing if libsyncthing is disabled
...
Before this change syncthingwidgets unconditionally included the header
from libsyncthing so it couldn't be used as stand-alone library if
libsyncthing was disabled.
2021-02-03 00:01:34 +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
7a5cd3c65f
Fix clazy warning about detatching Qt container
2021-01-04 18:52:23 +01:00
Martchus
5c47acef46
Ensure selection of status information doesn't take too much space
2021-01-02 18:02:48 +01:00
Martchus
ed495ec667
Add UI to configure what information should be considered to compute overall status
...
* See https://github.com/Martchus/syncthingtray/issues/74
* See https://github.com/Martchus/syncthingtray/issues/76
2021-01-01 20:55:18 +01:00
Martchus
76ee21500d
Move setting for traffic statistics below settings with combo boxes
...
It just looks nicer.
2021-01-01 20:50:11 +01:00
Martchus
c656f6fba0
Load/save status compution flags from/to settings
2020-12-31 03:08:08 +01:00
Martchus
4040a4e136
Hide connection status from settings when there are multiple tray icons
2020-10-18 17:02:12 +02:00
Martchus
fe4082a253
Add fallback icons for buttons to move connections up and down
...
because these buttons are icon-only and therefore looks odd without an
icon.
2020-09-12 22:09:40 +02:00
Martchus
3b49e9e312
Support Qt 6 (commit 174154b)
2020-09-04 01:09:18 +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
e10eca68f9
Rename "Inotify-launcher" to "Extra launcher"
...
The external inotify tool is likely not used anymore. It makes sense to
keep the concept of supporting additional tools because it might be used
in the future again. So it seems best to give the additional launcher a
more generic name.
2020-07-09 21:08:46 +02:00
Martchus
b5cf0523b6
Fix visibility of libsyncthing-specific settings widgets
2020-07-09 20:28:53 +02:00
Martchus
a9225c5a35
Use addCustomAction() instead of deprecated addCustomButton()
2020-07-09 20:21:54 +02:00
Martchus
28a8391f2b
Update libsyncthing to v1.5.0, support setting data directory
2020-05-05 19:01:05 +02:00
Martchus
f61473142f
Add (so far missing) fallback icons
2020-04-03 16:31:41 +02:00
Martchus
1f3bb98375
Avoid scroll bars in settings dialog
2020-03-17 19:36:36 +01:00
Martchus
ec0fca1446
Allow selecting the config file path manually in connection settings
2020-03-17 19:36:10 +01:00
Martchus
bcb2b49b72
Don't use lower-case Qt macros
2020-03-08 13:50:32 +01:00
Martchus
a744ea642e
Remove hash<QString> implementation from settings.cpp
2020-03-02 16:14:53 +01:00
Martchus
94753de797
Fix start/stop button tooltip for system-wide systemd service
2020-02-02 19:51:16 +01:00
Martchus
133dbacb5d
Use consistent order for visibility attribute
2020-01-29 18:51:10 +01:00
Martchus
0b377c263b
Avoid code duplication in settings.cpp
2020-01-23 19:36:20 +01:00
Martchus
677644a17a
Apply clang-tidy
2020-01-23 19:35:35 +01:00
Martchus
86e97a0d43
Add tooltips for connection interval settings
2020-01-23 19:16:06 +01:00
Martchus
309ff054a0
Add option to connect automatically on startup
2020-01-23 19:09:51 +01:00
Martchus
287ec5542b
Allow setting log level when using libsyncthing
2020-01-20 22:30:42 +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
6048fd259e
Align systemd buttons in settings more nicely
2019-12-18 00:27:25 +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
05e49c86ce
Improve color picker for icons
...
* Add note about Drag & Drop
* Allow picking from multiple presets
2019-11-19 19:33:58 +01:00
Martchus
37893f77cb
Fix compilation with Qt >= 5.14.0
2019-10-20 03:37:44 +02:00
Martchus
a9013198e3
Consider built-in Syncthing library no longer experimental
...
It works quite well and "libsyncthing" is based on a stable
Syncthing release (1.3.0 as of writing this message).
2019-10-09 23:09:16 +02:00
Martchus
47fae26975
Construct QList for pages from initializer list
2019-08-10 22:04:39 +02:00
Martchus
a2d5307e4f
Apply clang-format
2019-08-03 16:31:38 +02:00
Martchus
db16727956
Show launcher log also before opening settings dialog
2019-08-02 17:05:48 +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
972f7b2776
Stop libsyncthing when stopping the application
2019-07-29 16:00:41 +02:00
Martchus
02971698cf
Show libsyncthing version as tooltip
2019-07-28 22:01:30 +02:00
Martchus
4b6cb69586
Fix missing exports
2019-07-28 21:34:51 +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
fb3c9e9635
Adjust launcher/service apply yet another time
...
* Only reconnect later if the launcher/service is actually running
* Don't try to reconnect if systemd unit is not available
2019-07-26 16:36:48 +02:00
Martchus
1ce8ec9c5f
Consider systemd status only relevant if unit is available
...
If the unit is not available is is not possible to tell whether the
service is running or not so the systemd status should not be
considered yet. As soon as the status changes Systemd::apply() is
executed again and the status possibly considered.
2019-07-25 18:32:52 +02:00
Martchus
bd3e0f15e8
Polish autostart code
2019-07-20 17:12:55 +02:00
Chih-Hsuan Yen
1e90925fba
Allow autostarting syncthingtray on macOS as launch agents
2019-07-20 12:10:32 +08:00
Martchus
038225936e
Base libsyncthing on official library refactoring
2019-07-17 17:53:36 +02:00