Commit Graph

30 Commits

Author SHA1 Message Date
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 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 f0de7d204a Fix warning about flags for setFrameStyle() 2021-03-23 15:23:19 +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 28a8391f2b Update libsyncthing to v1.5.0, support setting data directory 2020-05-05 19:01:05 +02: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 677644a17a Apply clang-tidy 2020-01-23 19:35:35 +01:00
Martchus 287ec5542b Allow setting log level when using libsyncthing 2020-01-20 22:30:42 +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 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 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 038225936e Base libsyncthing on official library refactoring 2019-07-17 17:53:36 +02:00
Martchus 2112b00347 Allow to show start/stop button for launcher 2019-07-12 20:32:55 +02:00
Martchus 3d5869f8e1 Add default args for Syncthing launcher 2019-07-07 12:59:47 +02:00
Martchus 64473df5ba Adapt to changes in c++utilities 2019-06-10 22:48:26 +02:00
Martchus 05da0465a7 Allow customizing status icon colors 2019-05-19 17:57:37 +02:00
Martchus d88df866d2 Adapt to c++utilities v5 2019-05-04 21:05:21 +02:00
Martchus 016e5e29a9 widgets GUI: Don't use frames by default
Looks better with most themes.
2019-03-20 17:36:52 +01:00
Martchus 988765f2ba Show new dev/dir notifications in usual tray icon and Plasmoid 2018-05-01 22:27:03 +02:00
Martchus 0d635e5ad5 Refactor launcher
* Pass program and arguments directly
    * Prevent failure on white space in executable path
    * Use own parser for arguments
* Make libsyncthing accessible from launcher
2018-04-18 23:27:45 +02:00
Martchus 0c104f60b8 Wait till all processes finished, ask for killing
See https://github.com/Martchus/syncthingtray/issues/15
2018-04-02 23:32:52 +02:00
Martchus 146d4870e4 Refactor preventing unwanted error messages
* See https://github.com/Martchus/syncthingtray/issues/15
* Not tested yet
2018-04-02 20:35:30 +02:00
Martchus d2eb4addd9 Distinguish between local an remote sync in settings 2018-03-31 22:31:28 +02:00
Martchus 907f004a84 Do not notify about "Sync complete" by default
Issue described in
https://forum.syncthing.net/t/proper-way-for-sync-complete-notification-and-actual-idle-detection
should be fixed first.
2018-02-20 20:40:18 +01:00
Martchus 69ffaeb1f3 Apply tidy after updating to clang-format 5.0.0
The behavior of clang-format slightly changed in Clang 5.0.0:
http://releases.llvm.org/5.0.0/tools/clang/docs/ReleaseNotes.html#clang-format
2017-09-17 21:48:15 +02:00
Martchus 732a5fdd8d Apply clang-format 2017-05-01 03:34:43 +02:00
Martchus 49ff5a7b65 Move widgets from tray app to separate lib
So settings pages, web view and other widgets
can be used in other components such as the
Dolphin plugin and Plasmoid, too.
2017-04-23 18:31:18 +02:00