feat: get windows building with the UNICODE forced by using Qt
refactor: remove ARCHString use QString to convert to / from utf8
build: (arch) link to common
build: (base) link to arch
build: (io) Link to common
build: (client) link to common
build: (server) link to common
fix: Append to log file instead of creating a new one each log line
refactor: Trim cipher description for neater log output
fix: Update log messages to use wide string format for Unicode support
fix: Correct event creation to use wide string for Unicode compatibility
refactor: Use QStringDecoder for UTF-8 handling on Windows Daemon child process
fix: Use correct wide type for Win32 consts
Making a proxy class for QProcess to make GTest work is an excellent example of over-abstraction making simple things hard to do. I just wanted to call a function on QProcess and had to jump through hoops to do it.
Bye bye QProcessProxy! We can do much better with QTest.
This change may help us turn up some everyday problems in the field that get missed due to not using debug log level.
This could also make the log a bit noisier, so at a later date we may need to downgrade anything that is not actually a failure/warning.
* 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>
* Add warnings for libei and libportal
* Add warning about experimental Wayland support
* Update ChangeLog
* Move GUI res files to root res dir
* Fixed crazy qrc shenanigans
* Move Wayland warning logic, add tests, improve core retry
* Also install py modules with pip since meson can be in venv
* Throw error when no libei
* Add warnings when no libportal
* Allow failure then success to show related to Wayland (for switching modes)
* Fixed formatting
* Fixed includes
* Simplify warning message
* Add log hint
* Show warning when error already shown
* Only check for Wayland if X or libei
* Add error message when quitting dur to remote desktop error
* Improve consistency of portal log lines
* Swap assert for warning log lines
* Flush on IPC write
* Flush on cleanup instead of write
* Record core started setting
* Show server first start message
* Show message when active scope is read-only
* Show read only message on change
* Show read only on window show
* Try to improve main window size policy
* Revert addition of resizer
* Remove redundant file path fiddling
* Remove dead code and fixed missing const
* Print path and use queued connection
* Improve read-only message on Windows
* Only show toggle warning when dialog visible
* Update ChangeLog
* Fixed include
* Add reset settings menu action and env var
* Delete profile and config dirs, reduce duplication with TLS dir and various other paths, fixed bug in new client dialog, move TLS arg to server
* Better filename
* Make method const
* Update ChangeLog
* Remove include
* Make param const
* Stop core process on reset
* Fixed: reset menu action causes config to be pulled from app/server config
* Center main window in middle of screen
* Update fingerprint on load
* Update TLS controls enabled
* Use official Qt way to detect dark mode and clean up dead code
* Add missing includes
* Simplify dark mode code
* Check app config dir for .env
* Use app config dir for .env
* Don't check for existence of file
* Resolve orgDir
* Add missing example env
* Fixed example
* Update ChangeLog
* Improve trusted fingerprint message
* Fixed typo
* Improve grammar
* Simplify logging output
* Only show close reminder if not quitting
* Migrate old settings on macOS
* Raise main window when showing
* Raise critical error above main window
* Coverage for config scopes
* Fixed new client prompt
* Remove unused includes
* Further coverage for config scopes
* Update ChangeLog
* Load .env from app dir
* Use `OutputDebugStringA` on Windows
* Improved string manipulation in logger and better use of OutputDebugStringA
* Use noquote for path
* Apply TLS setting after activation
* Restart after activation
* Move skip debug message to correct place
* Only print settings path on create, not shown
* Merge common and global libs
* Reduce code duplication around constants, version, etc
* Simplify sprintf code
* Use snprintf
* Add error test menu
* Coverage for dotenv
* Coverage for Logger
* Add missing include
* Add init when no Git SHA
* Update ChangeLog
* Add spellings
* Set debugging on for release build
* Remove unused variable
* Remove bad comment
* Fixed copyright date
* Remove import
* Move URL const back to GUI
* Remove dead code and duplication
* Fixed/ignored lint warnings
* Fixed menus
* Parse string to long for date
* Change time limited logic
* Restore time limit logic
* Remove qglobal.h includes
* Remove warning
* Fixed tests to work with 0 value
* Update ChangeLog
* Move screen config files to new GUI lib
* Fixed bugs in config dialog related to service checkbox
* Test status tip
* Revert "Test status tip"
This reverts commit d11ad5bc22dab7edcf7ef0b3baada2fce240398a.
* Explain why service disabled
* Corrected client error message (written by non-native English writer) to make the message easier to understand for native English speakers
* Clearer logic
* Improve readability
* Coverage for 'add client' and client error messages
* Coverage for `Screen` class
* Clarify test names
* Use `const QString &` for backward compatibility
* Fixed lint warnings
* Prevent return paths after qFatal
* Use auto and abort to solve lint warnings
* Remove unused fake error
* Make operator hidden friend
* Remove redundant access specifier
* Convert int explicitly
* Swap && logic for linter
* Update ChangeLog