Skip to content

Use settings in core objects - #8886

Merged
sithlord48 merged 26 commits into
masterfrom
useSettingsInCoreObjects
Sep 30, 2025
Merged

Use settings in core objects#8886
sithlord48 merged 26 commits into
masterfrom
useSettingsInCoreObjects

Conversation

@sithlord48

@sithlord48 sithlord48 commented Aug 23, 2025

Copy link
Copy Markdown
Member

Fixes: #8852

Remove args from the IApp Classes new arg are handled by the new CoreArgParser and contained in the new CoreArgs.h header.

The CoreArgParser will be used to parse the arguments for deskflow-core. Parsed arguments are then written into the settings file (the normal one unless you provide -s. All of the options shown for deskflow-core will be optional when this is finished. (As in they will use the value in settings if not provided). With the exception of Setting log will write to the log file this is the only arg passed to deskflow-core other than the coremode.

❯ ./deskflow-core --help
deskflow-core: 1.24.0.50 (5f404e53)
Usage: deskflow-core coremode [options]
Keyboard and mouse sharing utility

Options:
  -h, --help                       Display Help on the command line
  -v, --version                    Display version information
  -s, --settings <configFile>      override configuration file to use
  -i, --interface <address>        Use a specific interface for the connection.
                                   Instead of any address in client mode or
                                   listening on all addresses in server mode
                                   address.
                                   address must be the IP address or hostname of
                                   an interface on the system.
  -p, --port <port>                Port to use in place of default port
  -n, --name <screen-name>         use screen-name instead the hostname to
                                   identify this screen
  --log-level <level>              filter out log messages with priority below
                                   level.
                                   level may be:
                                   FATAL, ERROR, WARNING, NOTE, INFO, DEBUG,
                                   DEBUG1, DEBUG2.
  -l, --log <file>                 Write messages to file
  --secure <value>                 Enable TLS encryption (default: true)
  --tls-cert <file>                Use file in place of default TLS certificate
                                   path
  --prevent-sleep <value>          When true the machine will be prevented from
                                   sleeping while the program is running
  -r, --restartOnFailure <value>   Set if the core should automatically restart
                                   if it fails
  --display <display>              When in X mode, connect to the X server at
                                   <display>
  --useHooks <value>               Sets if hooks are used for windows desks
  --peerCertCheck <value>          Server Mode: Enable client SSL certificate
                                   checking (default: true)
  --serverConfig <path>            Server Mode: File to load as server config
  --yscroll <value>                Client Mode: Vertical scrolling delta
                                   (default: 120)
  --languageSync <value>           Client Mode: Sync language with client
                                   (default: false)
  --invertScrollDirection <value>  Client Mode: Set scroll direciton to be
                                   inverted (default: false)
  --remoteHost <hostname>          Client Mode: Sets the remote host in the
                                   settings file

Arguments:
  coremode                         The mode to start in either: server or
                                   client

Version info prints

❯ ./deskflow-core --version
deskflow-core v1.23.0.152 (88217f30), protocol v1.8
Copyright (C) 2024-2025 Deskflow Devs
Copyright (C) 2012-2025 Symless Ltd.
Copyright (C) 2009-2012 Nick Bolton
Copyright (C) 2002-2009 Chris Schoeneman
  • Remove the old argparser and friends.
  • Add Option to SettingsDialog to adjust ScrollSpeed

@sithlord48
sithlord48 force-pushed the useSettingsInCoreObjects branch from a654ee4 to c5521da Compare August 23, 2025 20:20
@sithlord48
sithlord48 force-pushed the useSettingsInCoreObjects branch 3 times, most recently from 85c56ea to 034f506 Compare August 23, 2025 21:05
@github-actions

This comment was marked as outdated.

@deskflow deskflow deleted a comment from github-actions Bot Aug 24, 2025
@deskflow deskflow deleted a comment from github-actions Bot Aug 24, 2025
@sithlord48
sithlord48 force-pushed the useSettingsInCoreObjects branch 2 times, most recently from c7d2fd7 to d9abbdb Compare August 28, 2025 00:07
@sithlord48
sithlord48 force-pushed the useSettingsInCoreObjects branch 4 times, most recently from f94d611 to 218f0e7 Compare September 17, 2025 11:52
@sithlord48
sithlord48 force-pushed the useSettingsInCoreObjects branch 8 times, most recently from de5472c to b46cf66 Compare September 24, 2025 15:58
@deskflow deskflow deleted a comment from github-actions Bot Sep 24, 2025
@sithlord48
sithlord48 force-pushed the useSettingsInCoreObjects branch 6 times, most recently from cf58737 to 4c8e8d7 Compare September 26, 2025 02:43
@sithlord48 sithlord48 changed the title [WIP] Use settings in core objects Use settings in core objects Sep 26, 2025
@sithlord48
sithlord48 force-pushed the useSettingsInCoreObjects branch from 9a360fa to 60edf66 Compare September 30, 2025 10:17
@sithlord48
sithlord48 merged commit e30025e into master Sep 30, 2025
31 checks passed
@sithlord48
sithlord48 deleted the useSettingsInCoreObjects branch September 30, 2025 10:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Replace CLI args with Qt settings file read in Core

2 participants