Commit Graph

1011 Commits

Author SHA1 Message Date
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 b350aaf879 cli: Mark RelevantDir as explicit and ~Application() as override 2021-01-11 18:50:28 +01:00
Martchus 2eaddb0464 cli: Print own device always on top to fix test failures
* Otherwise tests fail when the name of the own device preceeds the other
  device names
* See https://github.com/Martchus/PKGBUILDs/issues/102
2021-01-11 18:49:35 +01:00
Martchus 76407c1f1e Consider process initially stopped so the disconnect notification is correctly suppressed 2021-01-06 17:51:21 +01:00
Martchus ea442ed569 Update libsyncthing to v1.12.1 2021-01-06 17:29:35 +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 4c4fc676e6 Update translations 2021-01-01 21:22:15 +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 b2ba8c01ea Use header-only target of qtutilities
See the commit message of the corresponding commit in c++utilities
(9fb3bbe179698fb10339d4911b98531b0847cfa1) and also the related commit in
reflective-rapidjson (5c49a438ade5ae4253ae978e3a22cf88bd7cb2e2).
2021-01-01 18:50:46 +01:00
Martchus c656f6fba0 Load/save status compution flags from/to settings 2020-12-31 03:08:08 +01:00
Martchus da911c6350 Refactor overall status compution
* Allow configuring the information to consider for computing the overall
  status via SyncthingStatusComputionFlags
    * Add flag to allow considering the status of remote devices for
      https://github.com/Martchus/syncthingtray/issues/74
    * Show only plain "idle" status when no flags are present for
      https://github.com/Martchus/syncthingtray/issues/76
* Set the default flags to keep the default behavior as-is
2020-12-31 02:48:18 +01:00
Martchus 392eb70b12 Remove uses of SyncthingStatus::OutOfSync which is never actually set 2020-12-31 02:33:20 +01:00
Martchus f7c3ceaece Improve documentation of connector library 2020-12-31 02:30:05 +01:00
Martchus 41e0934cd8 Don't call recalculateStatus() in emitNotifications()
because notifications have nothing to do with the status and it should not
make a difference since the status would not change. The UI is supposed to
rely only on newNotification().
2020-12-31 02:28:11 +01:00
Martchus b8f3b664e0 Use CPP_UTILITIES_MARK_FLAG_ENUM_CLASS for SyncthingHighLevelNotification 2020-12-31 02:17:25 +01:00
Martchus 4445659d2b Simply use isConnected() in StatusInfo::updateConnectedDevices()
instead of explicitely listing all "connected" states.
2020-12-31 02:15:12 +01:00
Martchus c827907ea6 Update SyncthingDirStatus enum to new states from syncthing/lib/model/folderstate.go 2020-12-31 02:13:32 +01:00
Martchus 64686caee6 Avoid detaching Qt container in SyncthingConnection::abortAllRequests()
* See https://doc.qt.io/qt-5/qtglobal.html#qAsConst
* Using std::as_const() instead of qAsConst() to keep support for Qt 5.6
2020-12-31 02:11:35 +01:00
Martchus 1bf58bf38d Apply cmake-format and clang-format 2020-12-17 17:52:02 +01:00
Martchus 75c0f5b74d Remove fractional part of device completion percentage
* For consistency with other percentages
* See https://github.com/Martchus/syncthingtray/issues/81
2020-12-17 12:58:46 +01:00
Martchus db92518e76 Improve download section of README 2020-12-05 21:31:30 +01:00
Martchus 2417746583 Update RPM download section 2020-12-05 21:08:15 +01:00
Martchus 66b6c224dc Update translations 2020-12-01 18:50:16 +01:00
Martchus 41372ccf0a Update libsyncthing to v1.12.0 2020-12-01 15:18:24 +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 3fe2fb9761 Update libsyncthing to v1.11.1 2020-11-03 18:28:50 +01:00
Martchus a069fa954b Apply clang-format 2020-11-03 18:28:31 +01:00
Martchus 7cea7509ba Use C/C++/linker flags for Go compilation from environment consistently
* Use flags from CMake's variables (initialized from environment variables)
  including build type specific variables
* Consider LDFLAGS as well; there's actually linking going on¹

¹Otherwise Go's build system wouldn't run into this error

```
# github.com/DataDog/zstd
/usr/lib/gcc/i686-w64-mingw32/10.2.0/../../../../i686-w64-mingw32/bin/ld: $WORK/b259/_x008.o:entropy_common.c:(.text+0xaa): undefined reference to `__memcpy_chk'
/usr/lib/gcc/i686-w64-mingw32/10.2.0/../../../../i686-w64-mingw32/bin/ld: $WORK/b259/_x033.o:zstd_v01.c:(.text+0x1b84): undefined reference to `__memcpy_chk'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
```

which is caused by LDFLAGS being inconsistent with CFLAGS.
2020-11-02 23:17:37 +01:00
Martchus 0348c78e98 Improve passing flags to Go build system
* Pass C/C++ flags from CMake to CGo
* Allow overriding flags passed via "-ldflags"
* Add default GOFLAGS and add CMake variable to override GOFLAGS
    * `-trimpath`: Prevent embedding full paths
    * `-modcacherw`: Ensure that go modules creates a write-able path
    * `-mod=readonly`: Ensure the module files are not updated in any go actions
2020-10-31 21:50:24 +01:00
Martchus dfe7091eb5 Document the "Consider … status …" checkboxes; one still needs the re-connect
See https://github.com/Martchus/syncthingtray/issues/79#issuecomment-716136144
2020-10-27 18:33:11 +01:00
Martchus a18ade7a36 Consider more error types when ignoring disconnects
See
https://github.com/Martchus/syncthingtray/issues/79#issuecomment-716136144
2020-10-26 17:39:10 +01:00
Martchus bacca0241a Fix build with Qt 6 (beta1) 2020-10-23 17:04:35 +02:00
Martchus 49bbebd1ad Allow configuring package suffix for qtutilities individually 2020-10-23 17:03:57 +02:00
Martchus 57e9865ace Sort devices by name 2020-10-20 19:36:02 +02:00
Martchus a4f6b62a62 Move code for passing args to already running instance into own function 2020-10-19 19:04:18 +02:00
Martchus 6122b54210 Add an opt-out for the single-process behavior
This would have been useful for testing multiple times and now even came up
in a forum discussion.
2020-10-19 19:03:42 +02:00
Martchus 7ada03b00b Apply clang-format 2020-10-19 18:33:28 +02:00
Martchus a6727b0fa7 Show the connection config name in tooltip when displaying multiple icons 2020-10-19 18:33:10 +02:00
Martchus 0d8c5e524a Extend documentation about translations 2020-10-19 18:31:02 +02:00
Martchus ee40da341f
Merge pull request #77 from tomasz1986/tomasz86-typos
Fix "conntected" typo in en_US translation
2020-10-19 11:02:23 +02:00
Tomasz Wilczyński cd10501580
Fix "conntected" typo in en_US translation
Change all instances of "conntected" to "connected" in the English (US)
translation file.

Signed-off-by: Tomasz Wilczyński <twilczynski@naver.com>
2020-10-19 15:30:37 +09:00
Martchus 37bbdd3258 Allow customizing config dir 2020-10-18 17:24:02 +02:00
Martchus 4078e6ff2a Prevent crash deleting s_dialogParent 2020-10-18 17:13:52 +02:00
Martchus 4040a4e136 Hide connection status from settings when there are multiple tray icons 2020-10-18 17:02:12 +02:00
Martchus 2c1dbff82b Allow specifiying multiple connection configurations 2020-10-18 16:28:17 +02:00
Martchus e509047367 Disable "decorated root" for recent changes view as there's no nested content 2020-10-18 15:52:57 +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