Commit graph

85 commits

Author SHA1 Message Date
sithlord48
55772e1133 chore: remove unused ARCH::vsnprintf 2025-01-29 21:07:31 +00:00
sithlord48
1085df54ed refactor: Reuse compliance
build files and documentation: MIT
  images / sources: GPL-2.0-only
  breeze icons: LGPL-2.0-only
  Microsoft MSM file, vc redist license
2025-01-27 17:05:47 -05:00
sithlord48
2040df435f fix: #8107: Remove legacy tray code 2025-01-23 19:16:29 +00:00
sithlord48
3991e0c1a1 refactor: use std::string in place of String
basedon: https://github.com/debauchee/barrier/pull/709
2025-01-08 00:11:34 +00:00
sithlord48
2349ce7f52 chore: replace simple cases of typedef with using 2024-12-04 10:40:58 -05:00
sithlord48
403830ceea build: rm DESKFLOW_APP_NAME define
Unify Server APP USER_CONFIG_NAME and SYSTEM_CONFIG_NAME
 Some unix users may need to move their config to deskflow.conf from .deskflow.conf
2024-11-15 12:20:17 +00:00
sithlord48
90d27a174d refactor: do not include full modules in qt files 2024-10-21 14:30:02 +01:00
sithlord48
9b9ecb0d05 chore: Adjust Clang-format linter rules
120 Column Lines
 Block Indent for Bracket Align
 Custom Line Break Rules
 No Single Line Functions
2024-10-17 21:38:29 +01:00
Nick Bolton
636e3eab96 feat: Respect XDG_CONFIG_HOME in server/client 2024-10-14 17:43:30 +01:00
Nick Bolton
9c4f6e6d0b chore: Change TLS dir to same as Qt config 2024-10-14 17:43:30 +01:00
Nick Bolton
6bb1bcad8c chore!: Relocate commercial code downstream 2024-10-01 14:39:05 +01:00
Chris Rizzitello
ed1217e9cc
Use Deskflow Name (#7519)
* Use Deskflow Name

* Remove business-oriented options from issue templates

* Remove business-oriented workflow

* Bump version to 3.0.0 (to avoid confusion with previously used version numbers 1.x & 2.x)

* Update readme to reflect new project name and goals

* Found some more "synergy" to rename

* Rename `synlib` to `app`

* Rename `syntool` to `deskflow-legacy`

* Rename `synwinhk` to `dfwhook`

* Rename dirs from synergy to deskflow

* Rename more "Synergy" files

* Rename app bundle ID

* Fixed copyright typo

* Rename only title in serial key dialog (to be moved downstream later)

* Preserve original serial key window for moving downstream

* Restore dialogs ready for moving downstream

* Rename `QDeskflowApplication` to `DeskflowApplication` (the Q is confusing)

* Restore Volker's original project name

* Fixed mimetype

* Fixed weird grammar

* Fixed (more) weird grammar

* Broken link, restoring (but we should move all links out of source)

* Broken link, restoring (but we should move all links out of source)

* Add write permission to valgrind-analysis.yml

* Restore AUR conflicts

* Apply Clang format

* Update ChangeLog

* Back out version change

---------

Co-authored-by: Nick Bolton <nick@symless.com>
2024-09-17 20:00:25 +01:00
Nick Bolton
157fe818d8
Refactor local/global save/load and show dev thanks message (#7423)
* WIP: Show dev thanks message

* Improve error messages and guard license code

* Print core command

* Allow license tests when licensing disabled by default

* Don't check invalid serial key

* Fixed typo

* Add error checking

* Use shared ptr instead of static deps

* Actually save and load the setting

* Add dev thanks vars to CI

* Show thanks message after connected

* Refactor hack-job of local/global save/load to remove coupling and use Qt events system

* Simplify config loading

* Overloads for optionals

* Fixed global config scope not loaded

* Save message state before showing to avoid multiple messages

* Update ChangeLog

* Fixed lint warnings

* Make function const

* Reduce verbosity

* Remove dead code, show version on start, tidy up lint warnings

* Make product name code safer

* Connect on enter press

* Only show server specific wording when on server

* Add emit commands

* Log info and error

* Remove deaad code

* Remove test member

* Disable start context menu action unless usable

* Show more relvant connect message

* Fixed close to tray not applied, and simplified restart core logic

* Remove redundant include
2024-08-03 01:17:29 +01:00
Nick Bolton
9eeb1cb7ee
Introduce 'Advanced' tab to Preferences window (#7419)
* Add QML and QtQuick deps

* Keep only Qt declarative

* Fixed delcarative package name

* Use `qt6-qtdeclarative` on OpenSUSE

* Fixed warnings

* Introduce tabs for settings and make some settings easier to understand

* Further reorganization of settings UI

* Revert config.yml

* Show Qt version in config

* Remove custom font

* Improve wording of elevate privs

* Fixed window sizes and default tabs

* Save main window size and position

* Fixed slot warning

* Fixed hacky use of validators

* Make activation cancel more intuitive

* Save window state in dtor and add try-catch to prevent exceptions propagating

* Fixed consistency of fatal messages

* Improve color conssitency and add tooltip

* Clean up styles and weird layout

* Move config files to new gui lib

* Core interface integ tests

* Rename `Config` to `ConfigScopes`

* Add 'Schoeneman' to cspell

* Fixed incorrect `Config` (should be `ConfigScopes`)

* Fixed typo

* Missed a spot

* Delete accidentally re-added file

* Fixed formatting

* Add short opt

* Coverage for `AppConfig`

* Update ChangeLog

* Remove redundant includes

* Fixed date

* Remove rogue include
2024-08-01 01:13:01 +01:00
Nick Bolton
f9b93210ed Add TODO for S1-1767 (lock order reversal) 2024-07-29 23:46:49 +01:00
Nick Bolton
c9e11a6fdc
Assert arg value num > 0 for BSD socket poll unblock pipe (#7415)
* Move integ test to corredt place and re-enable tests

* Depend on `poll.h` (removes support for non-POSIX systems)

* Only build tests for each arch

* Move back to unit tests (poll is mocked)

* Better error message for valgrind not found

* Simplify dependency injection for BSD sockets poll test

* Improve test readability for BSD net poll

* Split out 2-in-1 test for `isAnyAddr`

* Stub out sleep function

* Improve coverage for pollSocket

* Use gmock ON_CALL instead of manual mock

* Remove unused function signature

* Use conventional deps struct instead of std functional

* Add test for socket data FD set to -1

* Add assertation for adding unblock pipe

* Use older style array alloc

* Less precision around `getNetworkDataForThread` value

* Use `ssize_t` for `ignore`

* Remove unused var

* Update ChangeLog

* Assert `n > 0`

* Add `num > 0` to top assert

* Update ChangeLog

* Only run assert test in debug
2024-07-29 21:51:01 +01:00
Nick Bolton
b02077550c
Expand BSD sockets poll tests and remove legacy-poll code (#7414)
* Move integ test to corredt place and re-enable tests

* Depend on `poll.h` (removes support for non-POSIX systems)

* Only build tests for each arch

* Move back to unit tests (poll is mocked)

* Better error message for valgrind not found

* Simplify dependency injection for BSD sockets poll test

* Improve test readability for BSD net poll

* Split out 2-in-1 test for `isAnyAddr`

* Stub out sleep function

* Improve coverage for pollSocket

* Use gmock ON_CALL instead of manual mock

* Remove unused function signature

* Use conventional deps struct instead of std functional

* Add test for socket data FD set to -1

* Add assertation for adding unblock pipe

* Use older style array alloc

* Less precision around `getNetworkDataForThread` value

* Use `ssize_t` for `ignore`

* Remove unused var

* Update ChangeLog
2024-07-29 18:04:17 +01:00
Nick Bolton
e435953af7
Make Clang param and arg alignment more readable (#7387)
* Turn off alignment of params

* Apply Clang format

* Change AlignAfterOpenBracket to AlwaysBreak and add extra bin pack settings

* Restore default bin packing

* Apply format
2024-07-16 14:36:44 +01:00
Nick Bolton
37bb0f989e
Format all source with Clang and introduce lint workflow (#7364)
* Lint script with CLang format

* Use `-i` for `clang-format` and add more logging for lint scripts

* Apply LLVM CLang formatting

* Fixed comment

* Update ChangeLog

* Fixed bad return code logic

* Improve output for linters

* Fixed re-used var in clang lint

* Fixed include order for tests and use `#if 0` instead of commenting out code

* Use full Clang format dump

* Dump Ubuntu Clang format

* Dump Clang format from Debian

* Dumped from: clang-format version 18.1.8

* Revert "Dumped from: clang-format version 18.1.8"

This reverts commit b9bbda2995bb0b4b65baf14afebb0361ec64e644.

* Remove BasedOnStyle

* Restore base Clang format file

* Use clang-format from pip

* Apply Clang format 18 style

* Add clang_format deps

* Fixed include order issues and *some* accidental includes
2024-07-02 20:07:06 +01:00
Serhii Hadzhilov
5b6f5df6ea
SYNERGY1-1497 memory leaks in synergyc on mac os (#7170)
* SYNERGY1-1497 Fix memory leak in screen saver functionality

* SYNERGY1-1497 Fix memory leak in ArchNetworkBSD::nameToAddr

* SYNERGY1-1497 Fix memory leak in TLS for synergyc

* SYNERGY1-1497 Fix code smells

* Update ChangeLog

* SYNERGY1-1497 Fix meory leak in ArchNetworkWinsock::nameToAddr

* Update ChangeLog as it was requested
2022-05-16 19:00:16 +03:00
Serhii Hadzhilov
7bc2d76e1b
SYNERGY1-1478 Fix compilation issues (#7163)
* SYNERGY1-1478 Fix compilation issues

* Update ChangeLog
2022-05-04 12:09:23 +03:00
Serhii Hadzhilov
af4c88e531
SYNERGY-1454 Scroll direction (#7140)
* SYNERGY-1454 Add a new checkbox into the setting dialog

* SYNERGY-1454 Save the new option

* SYNERGY-1454 Pass the new option to client

* SYNERGY-1454 Parse the new param on client side

* SYNERGY-1454 Invert scroll direction for macOS

* SYNERGY-1454 Scroll direction on Windows

* SYNERGY-1454 Remove unused code

* SYNERGY-1454 Scroll direction for Linux

* SYNERGY-1454 Simplify scroll direction for Mac

* SYNERGY-1454 Simplify scroll direction for Linux

* SYNERGY-1454 Simplify scroll direction for Windows

* SYNERGY-1454 ChangeLog

* SYNERGY-1454 Fix code smell

* SYNERGY-1434 Lower case for the first char of the option

* SYNERGY-1454 Fix indentations

Co-authored-by: Serhii Hadzhilov <gadzhilov.sergey@gmail.com>
Co-authored-by: Serhii Hadzhilov <serhii@symless.com>
2022-01-26 14:07:28 +02:00
Igor Sikachyna
6b1761316a
SYNERGY-856 - Force prevent sleep (#7047)
* [UB-856] - Set display as busy

* SYNERGY-856 - Prevent sleep on Mac

* SYNERGY-856 - Prevent sleep on Linux

* SYNERGY-856 - Update changelog

* SYNERGY-856 - Set user activity on for Mac to prevent sleep

* SYNERGY-856 - Prevent screen  sleep continuosly

* SYNERGY-856 - Try implementing DBus in the server/client

* SYNERGY-856 - Move inhibitor to arch instead of gui

* SYNERGY-856 - Undo undesired changes

* SYNERGY-856 - Undo remaining undersired changes

* SYNERGY-856 - Compile on MacOS

* SYNERGY-856 - Reduce if/else depth

* SYNERGY-856 - Remove AppDelegate include

* SYNERGY-856 - Update inhibitor code to have more verbose debug output

* SYNERGY-856 - Make methods static

* SYNERGY-856 - Remove unused declarations
2021-07-12 12:44:08 +03:00
Igor Sikachyna
89363240eb
SYNERGY-988 - Normalize scrolling direction (#7044)
* SYNERGY-988 - Normalize scrolling direction on Mac

* SYNERGY-988 - Scroll direction check on Windows

* SYNERGY-988 - Add check for registry key presence

* SYNERGY-988 - Normalize scrolling directino on Linux

* SYNERGY-988 - Detach scroll direction check on Windows

* SYNERGY-988 - Update changelog

* SYNERGY-988 - Resolve code smells

* SYNERGY-988 - Normalize scroll direction for Linux servers

* SYNERGY-988 - Removed unnecessary INFO level logs

Co-authored-by: SerhiiGadzhilov <71632867+SerhiiGadzhilov@users.noreply.github.com>
2021-06-30 15:25:11 +03:00
Andrey Batyiev
2569409ba2
SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6 (#7008)
* SYNERGY-970 Synergy1. User is not able to connect to server using ipv6 without wrapping IP in square quotes
*Fix connection without brackets
*Fix config screen bug

* SYNERGY-970 Synergy1. User is not able to connect to server using ipv6 without wrapping IP in square quotes
*Update changelog

* SYNERGY-970 Mac client listens on ipv4 only but attempts to connect on ipv6 #6964
*Add logging in case of several IP of hostname

* Synergy 970 synergy1. user is not able to connect to server using ipv6 without wrapping ip in square quotes
*Update changelog

* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
*Fix Sonar warnings

* SUNERGY-885-Mac client listens on ipv4 only but attempts to connect on ipv6
*Update Changelog

* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix include

* Sunergy-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix sonar warnings

* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
*Add loggic to connect to first from reachable server addresses

* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix unix compilation

* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix unix compilation

* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix code smells

* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix build

* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix memory leak

* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Added logic for temporary ipv6 filtering from connect

* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Temporary disable ipv6 parsing and resolving tests

Co-authored-by: Andrii Batyiev <andrii-external@symless.com>
2021-05-20 19:59:05 +03:00
Andrey Batyiev
c1243deab9
SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6 (#6983)
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Fix ipv6 port parsing
* Fix ipv6 server bind

* SYNERGY 885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Add ipv6 scope checker

* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Update changelog

* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Refactor network address logic

* SYNERGY-885-Mac client listens on ipv4 only but attempts to connect on ipv6
* Build fix

* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Fix code smells

* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Fix empty ipv4 hostname

* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Fix build

* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Add test for new logic

* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Upgrade network adress parser tests

* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Fix sonar code smells in tests

* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Fix code smells

* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
*Fix comment

Co-authored-by: user <user@users-Mac-mini.local>
Co-authored-by: Andrii Batyiev <andrii-external@symless.com>
2021-04-26 10:37:34 +03:00
Andrey Batyiev
ad1fd9c1af
SYNERGY 512 SonarCloud vulnerabilities in Synergy-Core (#6971)
* SYNERGY-512 SonarCloud vulnerabilities in Synergy-Core
* Fix all vulnerablilities from SonarCloud besides TLS
* Update ChangeLog

* SYNERGY-512 SonarCloud vulnerabilities in Synergy-Core
* Fix SonarCloud messages(Code Smells level)

* SYNERGY-512 SonarCloud vulnerabilities in Synergy-Core
* Fix build on Linux based systems

* SYNERGY-512 SonarCloud vulnerabilities in Synergy-Core
* Fix Sonar messages

* SYNERGY-512 SonarCloud vulnerabilities in Synergy-Core
* Fix Sonar messages

* SYNERGY-512 SonarCloud vulnerabilities in Synergy-Core
* Fix Sonar messages

* SYNERGY-512 SonarCloud vulnerabilities in Synergy-Core
* Resolve comment issues

* SYNERGY-512 SonarCloud vulnerabilities in Synergy-Core
* Fix comments

Co-authored-by: Andrii Batyiev <andrii-external@symless.com>
2021-04-06 13:02:25 +03:00
Ignacio Rodríguez
5c2311a50a
Remaining SonarCloud Bugs (#6900)
* (WIP)-all issues corrected, tests started

* first test passing

alternative solution for SonarCloud check

fixed for to while translation

added changelog item

adding tests and fixes

more tests; avoid compiling BSD Tests on Windows

attempting a BSD compile patch

more tests

borrowing symbol detection from another test

more ambitious testing

changed the order of assertions for better info

more tests

fixed clear errors before executing

expanding transformation to use string comparison

including terminator on translation count

a different flag for testing MS Windows

differente Windows flag

more tests

fixing platform encoding match

Windows compiler difference on #ifdef

Google Test macro usage fix

test added

added keymap test

test and initialisation fixed

ms cl issue with named init

test for keymap

exercising keystate

more configuration exercises

one more test for config

added Unicode test

an IPv6 test

more portable networking code

using our own platform switching code

avoiding strcpy

* Fixed typo in Changelog.

* +appropriate memory handling

* one more test for coverage

* a tad more coverage

* expanded test on Config

Co-authored-by: Max <maxmommersteeg@hotmail.com>
Co-authored-by: SerhiiGadzhilov <71632867+SerhiiGadzhilov@users.noreply.github.com>
2021-01-15 13:24:31 +02:00
Ignacio Rodriguez
23037d7932 incorporating sonar's major 2020-11-05 19:20:45 +07:00
Ignacio Rodriguez
77ee71768b formatting 2020-11-03 22:31:32 +07:00
Ignacio Rodriguez
6656e7337d as per Sonar recommendations 2020-11-03 17:52:56 +07:00
Sarah Hebert
491bb2de00 #6312 Removed CURL dependency and all code that uses it 2018-07-08 16:51:50 +01:00
Jerry (Xinyu Hou)
8446fe5395 #6178 Merge IPv6 PR 2018-03-20 13:53:38 +00:00
XinyuHou
deea23f866 Apply tab to spaces filter to src folder 2017-02-07 01:24:59 +00:00
XinyuHou
74d63df244 Fix incorrect check of return code from dup 2016-12-07 17:28:15 +00:00
Epakai
4297673387 spelling error "implmented => implemented" 2016-12-06 14:56:47 +00:00
Andrew Nelless
9f1e91cc76 Remove pointless call to curl_free 2016-10-28 17:45:18 +01:00
Andrew Nelless
f174614655 Remove bizarre cast of sockaddr to char* 2016-10-05 12:46:16 +01:00
Andrew Nelless
9ed9bde4e7 Restore use of reinterpret_cast for sockaddr_in 2016-10-05 12:46:16 +01:00
Andrew Nelless
f3d1470e58 Brutally replace all reinterpret_casts with static_casts 2016-10-05 12:46:16 +01:00
Andrew Nelless
79fc6239fd #5617 Revert "Remove plugin interface from Arch"
This reverts commit 4613edc17ced61d6aca80cff661323ede0cb9d30.
2016-09-29 13:05:04 +01:00
Andrew Nelless
b1a991e8cd #5617 Revert "Remove plugin directory support"
This reverts commit fc697d2ab79bbd2d607c97658c986b629a1280ed.
2016-09-29 13:05:04 +01:00
Andrew Nelless
45ef3e1080 #5617 Remove plugin interface from Arch 2016-09-29 13:05:04 +01:00
Andrew Nelless
f7e588dfff #5617 Remove plugin directory support 2016-09-29 13:05:03 +01:00
Andrew Nelless
76b2558f1a #5617 Delete the plugin infrastructure 2016-09-29 13:05:03 +01:00
Andrew Nelless
c3c0913633 Update company copyright notice 2016-09-26 11:58:33 +01:00
Xinyu Hou
32da441fc0 Simplify OS info on Unix #4933 2015-10-27 15:45:39 -07:00
Xinyu Hou
95c9ffe7e8 Removed unused variable #4866 2015-08-03 16:38:42 -07:00
Xinyu Hou
fedad2b8a1 Improved plugin version logging for Unix #4866 2015-08-03 15:55:37 -07:00
Jerry (Xinyu Hou)
dc72b4e512 Changed plugin version mismatch log level to error #4866 2015-08-03 15:46:47 -07:00