Martchus
9f92e340b9
Add basic tests for wizard
2022-10-16 15:08:29 +02:00
Martchus
836f51d6f6
Update translations
2022-10-08 23:43:08 +02:00
Martchus
5fd07ee1c0
Allow opening wizard from Plasmoid
2022-10-08 23:42:29 +02:00
Martchus
63acf60cd8
Fix autostart configuration via wizard
2022-10-08 23:41:58 +02:00
Martchus
ec85052c20
Allow enabling devel modes via env variables
...
Using CLI args is not possible for plugins (such as the Plasmoid).
2022-10-08 22:44:00 +02:00
Martchus
a0297f67ba
Add setting to keep track whether it is the Plasmoid
2022-10-08 22:20:06 +02:00
Martchus
0086873684
Update translations
2022-10-07 22:59:46 +02:00
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
a45bd8e60e
Update translations
2022-10-04 10:53:14 +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
db69a148a9
Avoid showing default/uninitialized timestamp of libsyncthing version
2022-10-02 19:23:46 +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
2e961c489d
Update translations
2022-09-05 22:02:01 +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
e1ac6fb29b
Update translations
2022-09-03 21:36:57 +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
3bbbab035c
Update translations
2022-08-25 22:33:59 +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
f2b1a0fe88
Update translations
2022-08-23 21:07:50 +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
a7370fd8b8
Update translations
2022-07-26 23:59:42 +02:00
Martchus
2a4eefe6a4
Use "…" instead of "..." in certain places
2022-07-26 23:57:02 +02:00
Martchus
80c608208d
Show status text "Connecting to Syncthing ... " when connecting
...
instead of just "Not connected to Syncthing"
2022-07-26 23:52:26 +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
97a8dc3f99
Apply clang-format
2022-07-16 12:30:51 +02:00
Martchus
e7098002c1
Update translations
2022-07-04 19:59:53 +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
54b9b5e7cd
Update translations
2022-06-07 10:42:38 +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
b2d81d05e6
Update translations
2022-05-04 01:07:03 +02:00
Martchus
3b89c58ba4
Add note about disabling notifications of internal errors
2022-05-04 00:54:17 +02:00
Martchus
be9d963a82
Add internal errors to menu/dialog even if the notification is disabled
2022-05-04 00:24:26 +02:00
Lynnesbian
16baed6e27
fix typo ("settinngs" -> "settings")
2022-01-23 03:38:42 +10:00
Martchus
e81166cd79
Fix several warnings when building against Qt 6
2021-11-04 00:16:27 +01:00
Martchus
5ef0523458
Remove icons which are no longer needed
2021-10-16 21:28:59 +02:00
Martchus
77f0a8d5ae
Update translations
2021-10-09 01:15:49 +02:00
Martchus
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
Martchus
c3182ff256
Apply cmake-format
2021-10-07 18:28:13 +02:00
Martchus
8b273b6945
Improve messages for TLS errors
...
Before one only gets the generic error "TLS handshake failed". Now one gets
more details error messages plus the problematic certificate. This should
be helpful for debugging.
2021-10-07 18:22:41 +02:00
Martchus
af24ead784
Use ISO format for timestamps and put it in square brackets when displaying errors
2021-10-07 18:22:41 +02:00
Julianne420
ddefa35daa
Add zh_CN translation
2021-10-07 01:20:24 +08:00
Martchus
8348648c56
Make c'tor of `InternalError` inline again to workaround linker errors
...
Otherwise the shared build with targeting x86_64-w64-mingw32 fails with:
```
FAILED: widgets/syncthingwidgets-qt6.dll widgets/libsyncthingwidgets-qt6.dll.a
: && /usr/lib/ccache/bin/x86_64-w64-mingw32-g++ -D_FORTIFY_SOURCE=2 -D_GLIBCXX_ASSERTIONS -D_FORTIFY_SOURCE=2 -D_GLIBCXX_ASSERTIONS -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fcf-protection -O3 -DNDEBUG -Wl,-O1,--sort-common,--as-needed -fstack-protector -shared -o widgets/syncthingwidgets-qt6.dll -Wl,--out-implib,widgets/libsyncthingwidgets-qt6.dll.a -Wl,--major-image-version,1,--minor-image-version,1 widgets/CMakeFiles/syncthingwidgets-qt6.dir/syncthingwidgets-qt6_autogen/mocs_compilation.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/settings/settings.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/settings/settingsdialog.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/webview/webpage.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/webview/webviewdialog.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/webview/webviewinterceptor.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/misc/textviewdialog.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/misc/internalerrorsdialog.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/misc/direrrorsdialog.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/misc/statusinfo.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/misc/dbusstatusnotifier.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/misc/internalerror.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/misc/otherdialogs.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/misc/syncthinglauncher.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/misc/syncthingkiller.cpp.obj widgets/CMakeFiles/syncthingwidgets-qt6.dir/resources/windows-Release.rc.res widgets/CMakeFiles/syncthingwidgets-qt6.dir/syncthingwidgets-qt6_autogen/3YJK5W5UP7/qrc_syncthingwidgetsicons.cpp.obj -L/build/mingw-w64-syncthingtray-qt6/src/syncthingtray/build-x86_64-w64-mingw32-shared/connector -L/build/mingw-w64-syncthingtray-qt6/src/syncthingtray/build-x86_64-w64-mingw32-shared/model -L/build/mingw-w64-syncthingtray-qt6/src/lib model/libsyncthingmodel-qt6.dll.a /usr/x86_64-w64-mingw32/lib/libqtutilities-qt6.dll.a libsyncthing/libsyncthing-qt6.dll.a /usr/x86_64-w64-mingw32/lib/libQt6Network.dll.a /usr/x86_64-w64-mingw32/lib/libQt6Concurrent.dll.a connector/libsyncthingconnector-qt6.dll.a /usr/x86_64-w64-mingw32/lib/libc++utilities.dll.a /usr/x86_64-w64-mingw32/lib/libQt6Network.dll.a /usr/x86_64-w64-mingw32/lib/libQt6Core.dll.a /usr/x86_64-w64-mingw32/lib/libqtforkawesome-qt6.dll.a /usr/x86_64-w64-mingw32/lib/libQt6Widgets.dll.a /usr/x86_64-w64-mingw32/lib/libQt6Gui.dll.a /usr/x86_64-w64-mingw32/lib/libQt6Core.dll.a /usr/x86_64-w64-mingw32/lib/libc++utilities.dll.a /usr/x86_64-w64-mingw32/lib/libQt6Widgets.dll.a /usr/x86_64-w64-mingw32/lib/libQt6Gui.dll.a -ld3d11 -ldxgi -ldxguid -lws2_32 /usr/x86_64-w64-mingw32/lib/libQt6Core.dll.a -lmpr -luserenv -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 && :
/usr/lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld: widgets/CMakeFiles/syncthingwidgets-qt6.dir/misc/internalerror.cpp.obj:internalerror.cpp:(.text+0x1a0): multiple definition of `QtGui::InternalError::InternalError(QString const&, QUrl const&, QByteArray const&)'; widgets/CMakeFiles/syncthingwidgets-qt6.dir/syncthingwidgets-qt6_autogen/mocs_compilation.cpp.obj:mocs_compilation.cpp:(.text$_ZN5QtGui13InternalErrorC2ERK7QStringRK4QUrlRK10QByteArray[_ZN5QtGui13InternalErrorC2ERK7QStringRK4QUrlRK10QByteArray]+0x0): first defined here
/usr/lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld: widgets/CMakeFiles/syncthingwidgets-qt6.dir/misc/internalerror.cpp.obj:internalerror.cpp:(.text+0x1a0): multiple definition of `QtGui::InternalError::InternalError(QString const&, QUrl const&, QByteArray const&)'; widgets/CMakeFiles/syncthingwidgets-qt6.dir/syncthingwidgets-qt6_autogen/mocs_compilation.cpp.obj:mocs_compilation.cpp:(.text$_ZN5QtGui13InternalErrorC1ERK7QStringRK4QUrlRK10QByteArray[_ZN5QtGui13InternalErrorC1ERK7QStringRK4QUrlRK10QByteArray]+0x0): first defined here
```
I can currently not make sense of this build error. It does not happen
when targeting Linux or i686.
2021-10-05 00:13:34 +02:00
Martchus
4301910f1d
Avoid `QMessageBox::warning()` overload deprecated by Qt 6.2.0
2021-10-04 19:31:50 +02:00
Martchus
55e59d20c0
Make c'tor of InternalError explicit
2021-10-04 19:17:33 +02: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
745082f357
Redact password from URL when displaying internal errors
2021-10-02 20:31:20 +02: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
09e8955c06
Remove `const_cast` workaround for dealing with certificate errors
2021-08-07 19:42:15 +02:00
Martchus
078145f354
Require qtutilities 6.5.0 for change to `webviewincludes.h`
2021-08-07 18:43:32 +02:00
Martchus
d21c7cdf2a
Port Qt WebEngine related features to Qt 6.2.0 (beta2)
2021-08-07 18:05:30 +02:00
Martchus
a1d78a2f30
Update translations
2021-08-03 14:09:02 +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
44c372c78e
Update translations
2021-07-03 19:34:08 +02: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
9fc96a847a
Add button to show Syncthing releases/downloads in launcher
2021-07-03 18:44:37 +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
7508e59379
Update translations
2021-06-27 18:59:26 +02:00
Martchus
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
Martchus
1bc52ebb0f
Improve Boost.Process-based SyncthingProcess
...
* Implement member functions required to run tests
* Add documentation
* Add minor tweaks
2021-06-17 20:32:40 +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
93f59ebf8a
Apply clang-format
2021-05-27 18:16:56 +02:00
Martchus
0c475f5b7e
Update translations
2021-05-27 18:16:22 +02:00
Martchus
5a39b6bc91
Improve displaying errors
2021-05-21 22:35:28 +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