Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package vdu_controls for openSUSE:Factory 
checked in at 2026-08-05 17:50:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/vdu_controls (Old)
 and      /work/SRC/openSUSE:Factory/.vdu_controls.new.16738 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "vdu_controls"

Wed Aug  5 17:50:02 2026 rev:22 rq:1369621 version:2.6.8

Changes:
--------
--- /work/SRC/openSUSE:Factory/vdu_controls/vdu_controls.changes        
2026-08-03 17:17:05.650295180 +0200
+++ /work/SRC/openSUSE:Factory/.vdu_controls.new.16738/vdu_controls.changes     
2026-08-05 17:50:51.475021019 +0200
@@ -1,0 +2,8 @@
+Wed Aug  5 01:35:17 UTC 2026 - Michael Hamilton <[email protected]>
+
+- Version 2.6.8
+  * Fix Qt session restoration state - set executable to be wrapper-script.
+  * Fix gnome QTextBrowser external http link following.
+  * Remove current working directory from python path (prevent accidental 
imports).
+
+-------------------------------------------------------------------

Old:
----
  vdu_controls-2.6.7.tar.gz

New:
----
  vdu_controls-2.6.8.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ vdu_controls.spec ++++++
--- /var/tmp/diff_new_pack.bc53J9/_old  2026-08-05 17:50:52.007039629 +0200
+++ /var/tmp/diff_new_pack.bc53J9/_new  2026-08-05 17:50:52.011039769 +0200
@@ -17,7 +17,7 @@
 #
 
 Name:           vdu_controls
-Version:        2.6.7
+Version:        2.6.8
 Release:        0
 Summary:        Visual Display Unit virtual control panel
 License:        GPL-3.0-or-later

++++++ vdu_controls-2.6.7.tar.gz -> vdu_controls-2.6.8.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vdu_controls-2.6.7/CHANGELOG.md 
new/vdu_controls-2.6.8/CHANGELOG.md
--- old/vdu_controls-2.6.7/CHANGELOG.md 2026-08-03 02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/CHANGELOG.md 2026-08-05 02:57:02.000000000 +0200
@@ -4,6 +4,11 @@
 -->
 # Changelog
 
+## Version 2.6.8 <small>(2026-08-05)</small> 
+- Fix Qt session restoration state - set executable to be wrapper-script.
+- Fix gnome QTextBrowser external http link following.
+- Remove current working directory from python path (prevent accidental 
imports).
+
 ## Version 2.6.7 <small>(2026-08-03)</small>
 
 - Ambient-light slider now works properly at night.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vdu_controls-2.6.7/README.md 
new/vdu_controls-2.6.8/README.md
--- old/vdu_controls-2.6.7/README.md    2026-08-03 02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/README.md    2026-08-05 02:57:02.000000000 +0200
@@ -8,7 +8,7 @@
 
 A control panel for external monitors (*Visual Display Units*).
 
-> __[vdu_controls 2.6.6 is now 
available](https://github.com/digitaltrails/vdu_controls/releases/tag/v2.6.6).__
+> __[vdu_controls 2.6.8 is now 
available](https://github.com/digitaltrails/vdu_controls/releases/tag/v2.6.8).__
 > 
 
 > [!TIP]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vdu_controls-2.6.7/docs/_build/man/vdu_controls.1 
new/vdu_controls-2.6.8/docs/_build/man/vdu_controls.1
--- old/vdu_controls-2.6.7/docs/_build/man/vdu_controls.1       2026-08-03 
02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/docs/_build/man/vdu_controls.1       2026-08-05 
02:57:02.000000000 +0200
@@ -2,10 +2,11 @@
 .\"
 .TH "VDU_CONTROLS" "1" "" "vdu_controls 2.6.7" "vdu_controls Manual"
 .SS NAME
-vdu_controls \- a DDC control panel for monitors
+vdu_controls \- a DDC control panel for displays
 .PP
-A control panel for DisplayPort, DVI, HDMI, or USB\-connected VDUs
-(\f[I]Visual Display Units\f[R]).
+A control panel for DisplayPort, DVI, HDMI, or USB\-connected displays
+(\f[I]Visual Display Units\f[R]), with some limited support for
+laptop\-panels.
 .SS Synopsis:
 .IP
 .EX
@@ -211,7 +212,7 @@
 When available, \f[B]vdu_controls\f[R] defaults to interacting with VDUs
 via the DBUS \f[B]ddcutil\-service\f[R] service rather than the
 \f[B]ddcutil\f[R] command.
-With some older monitors, the \f[B]ddcutil\f[R] command can take a
+With some older displays, the \f[B]ddcutil\f[R] command can take a
 couple of seconds to handshake a connection each time it is run.
 The service caches connections and should be both faster and more
 reliable than the command.
@@ -598,11 +599,11 @@
 .SS Presets \- remote control
 UNIX/Linux signals may be used to cause \f[B]vdu_controls\f[R] to
 restore a preset or to initiate a refresh of the application from the
-connected monitors.
+connected displays.
 Signals in the range 40 to 55 correspond to first to last presets (if
 any are defined).
 Additionally, SIGHUP can be used to initiate \(lqRefresh settings from
-monitors\(rq.
+displays\(rq.
 For example:
 .IP
 .EX
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/vdu_controls-2.6.7/docs/_build/man/vdu_controls.1.html 
new/vdu_controls-2.6.8/docs/_build/man/vdu_controls.1.html
--- old/vdu_controls-2.6.7/docs/_build/man/vdu_controls.1.html  2026-08-03 
02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/docs/_build/man/vdu_controls.1.html  2026-08-05 
02:57:02.000000000 +0200
@@ -180,9 +180,10 @@
 <h1 class="title">VDU_CONTROLS</h1>
 </header>
 <h2>NAME</h2>
-<p>vdu_controls - a DDC control panel for monitors</p>
-<p>A control panel for DisplayPort, DVI, HDMI, or USB-connected VDUs
-(<em>Visual Display Units</em>).</p>
+<p>vdu_controls - a DDC control panel for displays</p>
+<p>A control panel for DisplayPort, DVI, HDMI, or USB-connected displays
+(<em>Visual Display Units</em>), with some limited support for
+laptop-panels.</p>
 <h2 id="synopsis">Synopsis:</h2>
 <pre><code>        vdu_controls
                      [--help|-h] [--about] [--detailed-help]
@@ -450,7 +451,7 @@
 <h3 id="dbus-ddcutil-service">DBUS ddcutil-service</h3>
 <p>When available, <strong>vdu_controls</strong> defaults to interacting
 with VDUs via the DBUS <strong>ddcutil-service</strong> service rather
-than the <strong>ddcutil</strong> command. With some older monitors, the
+than the <strong>ddcutil</strong> command. With some older displays, the
 <strong>ddcutil</strong> command can take a couple of seconds to
 handshake a connection each time it is run. The service caches
 connections and should be both faster and more reliable than the
@@ -773,9 +774,9 @@
 <h3 id="presets---remote-control">Presets - remote control</h3>
 <p>UNIX/Linux signals may be used to cause <strong>vdu_controls</strong>
 to restore a preset or to initiate a refresh of the application from the
-connected monitors. Signals in the range 40 to 55 correspond to first to
+connected displays. Signals in the range 40 to 55 correspond to first to
 last presets (if any are defined). Additionally, SIGHUP can be used to
-initiate “Refresh settings from monitors”. For example:</p>
+initiate “Refresh settings from displays”. For example:</p>
 <pre><code>  Identify the running vdu_controls (assuming it is installed as 
/usr/bin/vdu_controls)::
 
     ps axwww | grep &#39;[/]usr/bin/vdu_controls&#39;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vdu_controls-2.6.7/packaging/PKGBUILD 
new/vdu_controls-2.6.8/packaging/PKGBUILD
--- old/vdu_controls-2.6.7/packaging/PKGBUILD   2026-08-03 02:18:41.000000000 
+0200
+++ new/vdu_controls-2.6.8/packaging/PKGBUILD   2026-08-05 02:57:02.000000000 
+0200
@@ -1,6 +1,6 @@
 # Maintainer: Mark Wagie <mark dot wagie at proton dot me>
 pkgname=vdu_controls
-pkgver=2.6.7
+pkgver=2.6.8
 pkgrel=1
 pkgdesc="Visual Display Unit virtual control panel - a GUI front end to 
ddcutil"
 arch=('any')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vdu_controls-2.6.7/packaging/vdu_controls.spec 
new/vdu_controls-2.6.8/packaging/vdu_controls.spec
--- old/vdu_controls-2.6.7/packaging/vdu_controls.spec  2026-08-03 
02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/packaging/vdu_controls.spec  2026-08-05 
02:57:02.000000000 +0200
@@ -17,7 +17,7 @@
 #
 
 Name:           vdu_controls
-Version:        2.6.7
+Version:        2.6.8
 Release:        0
 Summary:        Visual Display Unit virtual control panel
 License:        GPL-3.0-or-later
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vdu_controls-2.6.7/packaging/vdu_controls.wrapper 
new/vdu_controls-2.6.8/packaging/vdu_controls.wrapper
--- old/vdu_controls-2.6.7/packaging/vdu_controls.wrapper       2026-08-03 
02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/packaging/vdu_controls.wrapper       2026-08-05 
02:57:02.000000000 +0200
@@ -1,5 +1,8 @@
 #!/bin/bash
 # SPDX-FileCopyrightText: 2021-2026 Contributors to vdu_controls 
<https://github.com/digitaltrails/vdu_controls>
 # SPDX-License-Identifier: GPL-3.0-or-later
+
+# Pass script name for use in session restoration.
+export VDU_CONTROLS_WRAPPER="$(realpath "$0")"
 export PYTHONPATH="/usr/share/vdu_controls:${PYTHONPATH}"
 exec /usr/bin/python3 -m vdu_controls "$@"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vdu_controls-2.6.7/pyproject.toml 
new/vdu_controls-2.6.8/pyproject.toml
--- old/vdu_controls-2.6.7/pyproject.toml       2026-08-03 02:18:41.000000000 
+0200
+++ new/vdu_controls-2.6.8/pyproject.toml       2026-08-05 02:57:02.000000000 
+0200
@@ -7,7 +7,7 @@
 
 [project]
 name = "vdu_controls"
-version = "2.6.7"
+version = "2.6.8"
 description = "Visual Display Unit virtual control panel"
 requires-python = ">=3.9"
 dependencies = [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vdu_controls-2.6.7/src/vdu_controls/__main__.py 
new/vdu_controls-2.6.8/src/vdu_controls/__main__.py
--- old/vdu_controls-2.6.7/src/vdu_controls/__main__.py 2026-08-03 
02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/src/vdu_controls/__main__.py 2026-08-05 
02:57:02.000000000 +0200
@@ -2,6 +2,9 @@
 # SPDX-License-Identifier: GPL-3.0-or-later
 import sys
 
+# Prevent stray vdu_controls in current working folder from being pulled in
+sys.path = [p for p in sys.path if p not in ('', '.')]
+
 from vdu_controls.vdu_controls_application import main
 
 if __name__ == '__main__':
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vdu_controls-2.6.7/src/vdu_controls/constants.py 
new/vdu_controls-2.6.8/src/vdu_controls/constants.py
--- old/vdu_controls-2.6.7/src/vdu_controls/constants.py        2026-08-03 
02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/src/vdu_controls/constants.py        2026-08-05 
02:57:02.000000000 +0200
@@ -38,7 +38,7 @@
 # the version reported in the About Dialog).  In this way, wider packaging
 # doesn't require hacks to copy with rc/beta suffixes which we are
 # never going to appear in delivered distro releases.
-VDU_CONTROLS_VERSION = '2.6.7'
+VDU_CONTROLS_VERSION = '2.6.8'
 VDU_CONTROLS_VERSION_TUPLE = tuple(int(i) for i in _re.split(r'[.-]', 
VDU_CONTROLS_VERSION)[:3])
 VDU_CONTROLS_BASE_VERSION = VDU_CONTROLS_VERSION.split('-')[0]
 VDU_CONTROLS_PRE_RELEASE = (VDU_CONTROLS_VERSION.split('-') + [ '' ])[1]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vdu_controls-2.6.7/src/vdu_controls/gui_misc.py 
new/vdu_controls-2.6.8/src/vdu_controls/gui_misc.py
--- old/vdu_controls-2.6.7/src/vdu_controls/gui_misc.py 2026-08-03 
02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/src/vdu_controls/gui_misc.py 2026-08-05 
02:57:02.000000000 +0200
@@ -12,6 +12,7 @@
     assert gui_thread is None
     gui_thread = thread
 
+
 def is_running_in_gui_thread() -> bool:
     # print(f">>>>>>>>>>>>>>>>>>>>>Checking if GUI thread is running... 
{QThread.currentThread()} {gui_thread}")
     assert gui_thread is not None
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vdu_controls-2.6.7/src/vdu_controls/help_dialog.py 
new/vdu_controls-2.6.8/src/vdu_controls/help_dialog.py
--- old/vdu_controls-2.6.7/src/vdu_controls/help_dialog.py      2026-08-03 
02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/src/vdu_controls/help_dialog.py      2026-08-05 
02:57:02.000000000 +0200
@@ -2,19 +2,23 @@
 # SPDX-License-Identifier: GPL-3.0-or-later
 from __future__ import annotations
 
+import subprocess
+from functools import partial
+
 from vdu_controls import constants
 
 from vdu_controls.app_locale import tr
 from vdu_controls.constants import VDU_CONTROLS_HELP_URL
-from vdu_controls.misc import generate_slug
+from vdu_controls.misc import generate_slug, is_gnome
 from vdu_controls.qt_imports import (
     QVBoxLayout, QSize, QTextBrowser,
-    QUrl, QDesktopServices,
+    QUrl, QDesktopServices, QTimer,
     QDialogButtonBox, QTabWidget, QWidget, QHBoxLayout, QListWidget, 
QListWidgetItem, Qt, QSplitter,
 )
 from vdu_controls.scaling import dpx
 from vdu_controls.widgets import SubWinDialog, DialogSingletonMixin
 import vdu_controls.app_locale as app_locale
+import vdu_controls.app_logging as log
 import re
 
 class MarkdownHelpViewer(QWidget):
@@ -100,8 +104,13 @@
         super().__init__()
         self.setReadOnly(True)
         self.setViewportMargins(dpx(40), dpx(40), dpx(25), dpx(15))
-        self.setOpenExternalLinks(True)
         self.setHtml(self.localized_text())
+        if is_gnome():
+            self.setOpenLinks(False)
+            self.setOpenExternalLinks(False)
+            self.anchorClicked.connect(self.gnome_open_url_safely)
+        else:
+            self.setOpenExternalLinks(True)
 
     def localized_text(self):
         # Doing this dynamically to more easily get translations
@@ -130,6 +139,24 @@
                  (tr("License"), 
"https://digitaltrails.github.io/vdu_controls/LICENSE/";),
                  ]
 
+    # Fix for browser opening - safer for gnome if running
+    # under xwayland.
+    @staticmethod
+    def gnome_open_url_safely(url: QUrl):
+        log.debug("OnlineHelpViewer: Using gnome url open")
+        def _open_url_with_xdg(url: QUrl):
+            try:
+                # Start xdg-open as a detached process
+                subprocess.Popen(['xdg-open', url.toString()],
+                                 stdout=subprocess.DEVNULL,
+                                 stderr=subprocess.DEVNULL)
+            except Exception as e:
+                print(f"Failed to open URL: {e}")
+
+        # Use a single-shot timer to prevent event loop reentrancy
+        QTimer.singleShot(0, partial(_open_url_with_xdg, url))
+
+
 class HelpDialog(SubWinDialog, DialogSingletonMixin):
 
     @staticmethod
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vdu_controls-2.6.7/src/vdu_controls/installer.py 
new/vdu_controls-2.6.8/src/vdu_controls/installer.py
--- old/vdu_controls-2.6.7/src/vdu_controls/installer.py        2026-08-03 
02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/src/vdu_controls/installer.py        2026-08-05 
02:57:02.000000000 +0200
@@ -60,11 +60,11 @@
         log.info(f"Creating zipapp {installed_script_path.as_posix()}")
         zipapp.create_archive(origin_script_path.parent.parent, 
target=installed_script_path,
                               main='vdu_controls.__main__:main', 
interpreter=sys.executable)
-    elif origin_script_path.name.encode(".pyz"):
+    elif origin_script_path.name.endswith(".pyz"):
         log.info(f"Copying existing zipapp {sys.argv[0]} to  
{installed_script_path.as_posix()}")
         shutil.copy2(sys.argv[0], installed_script_path)
     else:
-        log.error("Unrecognized installable")
+        log.error(f"Unrecognized installable: {origin_script_path}")
         sys.exit(0)
     log.info(f"chmod u+rwx {installed_script_path.as_posix()}")
     os.chmod(installed_script_path, stat.S_IRWXU)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vdu_controls-2.6.7/src/vdu_controls/misc.py 
new/vdu_controls-2.6.8/src/vdu_controls/misc.py
--- old/vdu_controls-2.6.7/src/vdu_controls/misc.py     2026-08-03 
02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/src/vdu_controls/misc.py     2026-08-05 
02:57:02.000000000 +0200
@@ -2,6 +2,7 @@
 # SPDX-License-Identifier: GPL-3.0-or-later
 from __future__ import annotations
 
+import os
 import re
 import sys
 import unicodedata
@@ -80,4 +81,9 @@
 
     # 2. Lowercase, strip punctuation, collapse spaces/dashes
     text = re.sub(r'[^\w\s-]', '', text).lower().strip()
-    return re.sub(r'[-\s]+', '-', text)
\ No newline at end of file
+    return re.sub(r'[-\s]+', '-', text)
+
+def is_gnome():
+    # Check environment variables
+    desktop = os.environ.get('XDG_CURRENT_DESKTOP', '').lower()
+    return 'gnome' in desktop or 'unity' in desktop  # Unity also uses GNOME 
bits
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/vdu_controls-2.6.7/src/vdu_controls/resources/docs/help.md 
new/vdu_controls-2.6.8/src/vdu_controls/resources/docs/help.md
--- old/vdu_controls-2.6.7/src/vdu_controls/resources/docs/help.md      
2026-08-03 02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/src/vdu_controls/resources/docs/help.md      
2026-08-05 02:57:02.000000000 +0200
@@ -7,9 +7,10 @@
 footer: vdu_controls 2.6.7
 ---
 
-# vdu_controls - a DDC control panel for monitors
+# vdu_controls - a DDC control panel for displays
 
-A control panel for DisplayPort, DVI, HDMI, or USB-connected VDUs (*Visual 
Display Units*).
+A control panel for DisplayPort, DVI, HDMI, or USB-connected displays (*Visual 
Display Units*),
+with some limited support for laptop-panels.
 
 ## Synopsis:
 
@@ -192,7 +193,7 @@
 ### DBUS ddcutil-service
 
 When available, ``vdu_controls`` defaults to interacting with VDUs via the 
DBUS ``ddcutil-service``
-service rather than the ``ddcutil`` command.  With some older monitors, the 
``ddcutil`` command 
+service rather than the ``ddcutil`` command.  With some older displays, the 
``ddcutil`` command 
 can take a couple of seconds to handshake a connection each time it is run.  
The service caches 
 connections and should be both faster and more reliable than the command.  
 Whether to use the service can be controlled by the ``DBUS client`` checkbox 
in the *Settings-Dialog*.
@@ -493,9 +494,9 @@
 ### Presets - remote control
 
 UNIX/Linux signals may be used to cause ``vdu_controls`` to restore a preset 
or to initiate a
-refresh of the application from the connected monitors.  Signals in the range 
40 to 55 correspond to
+refresh of the application from the connected displays.  Signals in the range 
40 to 55 correspond to
 first to last presets (if any are defined).  Additionally, SIGHUP can be used 
to initiate "Refresh
-settings from monitors".  For example:
+settings from displays".  For example:
 
       Identify the running vdu_controls (assuming it is installed as 
/usr/bin/vdu_controls)::
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/vdu_controls-2.6.7/src/vdu_controls/vdu_controls_application.py 
new/vdu_controls-2.6.8/src/vdu_controls/vdu_controls_application.py
--- old/vdu_controls-2.6.7/src/vdu_controls/vdu_controls_application.py 
2026-08-03 02:18:41.000000000 +0200
+++ new/vdu_controls-2.6.8/src/vdu_controls/vdu_controls_application.py 
2026-08-05 02:57:02.000000000 +0200
@@ -1619,6 +1619,22 @@
     return app_instance
 
 
+def fix_session_restoration_path(sys_args: List[str]) -> List[str]:
+    """
+    Ensure that sys.argv[0] points to the wrapper script 
(blah/bin/vdu_controls)
+    instead of the full path to __main__.py. This fixes session restoration
+    on all desktop environments (KDE, GNOME, XFCE, LXQt, etc.) by ensuring
+    the session manager saves the correct restart command.
+    """
+    # Prefer the environment variable set by the wrapper.
+    wrapper = getenv_logged("VDU_CONTROLS_WRAPPER", '')
+    if wrapper:
+        log.info(f"Wrapper script in use. Session restart executable: 
VDU_CONTROLS_WRAPPER={wrapper}.")
+        return [ wrapper ] + sys_args[1:]
+    log.info(f"Not started by wrapper script. Session restart executable: 
{sys.argv[0]}")
+    return sys_args
+
+
 def main() -> None:
     # Allow control-c to terminate the program
     signal.signal(signal.SIGINT, signal.SIG_DFL)
@@ -1657,7 +1673,8 @@
 
     QGuiApplication.setDesktopFileName("vdu_controls")  # Wayland needs this 
set to find/use the app's desktop icon.
     # Call QApplication before parsing arguments, it will parse and remove Qt 
session restoration arguments.
-    app = QApplication(sys.argv)
+    restartable_argv = fix_session_restoration_path(sys.argv)
+    app = QApplication(restartable_argv)
     assert app is not None
     app.setApplicationName('vdu_controls')
     app_thread = app.thread()
@@ -1668,7 +1685,7 @@
     global unix_signal_handler
     unix_signal_handler = SignalWakeupHandler(app)
 
-    log.info(f"{APPNAME} {VDU_CONTROLS_VERSION} {sys.argv[0]}  ")
+    log.info(f"{APPNAME} {VDU_CONTROLS_VERSION} {restartable_argv[0]}  ")
     log.info(f"python-locale: {locale.getlocale()} Qt-locale: 
{QLocale.system().name()}")
     log.info(f"desktop: {getenv_logged('XDG_CURRENT_DESKTOP', 
default='unknown')}; "
              f"session-type: {getenv_logged('XDG_SESSION_TYPE', 
default='unknown')}; "

Reply via email to