18 Commits

Author SHA256 Message Date
69e78599c3 Accepting request 1301850 from utilities
OBS-URL: https://build.opensuse.org/request/show/1301850
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/vdu_controls?expand=0&rev=17
2025-08-29 16:36:19 +00:00
Michael Hamilton
fbbe175118 Accepting request 1301849 from home:mchnz:branches:utilities
- Version 2.4.3
  * Fix a rare TypeError when light metering.
  * Some code cleanups for the splash screen.

OBS-URL: https://build.opensuse.org/request/show/1301849
OBS-URL: https://build.opensuse.org/package/show/utilities/vdu_controls?expand=0&rev=54
2025-08-29 02:32:10 +00:00
c450f2c353 Accepting request 1296218 from utilities
OBS-URL: https://build.opensuse.org/request/show/1296218
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/vdu_controls?expand=0&rev=16
2025-07-30 09:44:17 +00:00
Michael Hamilton
d9074817a3 - Version 2.4.2
* Fix the Lux-Dialog's display of the Daylight-Factor for non 
    semi-automatic metering.
  * Make sure the tray-icon always shows the correct lux-level icon.
  * Correct the lux-zone boundaries on the ambient slider.

OBS-URL: https://build.opensuse.org/package/show/utilities/vdu_controls?expand=0&rev=52
2025-07-28 22:08:35 +00:00
1f7087412f Accepting request 1292550 from utilities
OBS-URL: https://build.opensuse.org/request/show/1292550
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/vdu_controls?expand=0&rev=15
2025-07-14 08:52:35 +00:00
Michael Hamilton
944b18e46f - Version 2.4.1
* Support PyQt6 before PyQt5 goes out of support.
  * PyQt6 is used by default, with a fallback to PyQt5 should it
    not be available.
  * Add the prefer-qt6 option to the Settings-Dialog (you may 
    disable this option to force the use of PyQt5).
  * Various changes to UI layouts to accommodate both Qt5 and Qt6
    (including Qt6 High-DPI scaling).
  * Minor alterations to the main-window layout to make the more
    spacious Qt6 styling more compact.
  * Renamed the smart-uses-xcb option to smart-uses-xwayland.  This 
    better reflects what the option does.
  * Fixed smart-window preservation when the app was closed from the
    tray without ever showing the main window. 
  * Fixed weather selection: automatically restore any missing
    weather definition files.
  * Fixed initialization-preset error handling: fix a reference
    to an undefined variable.
  * Only persist lux_daylight_factor if in semi-auto mode (stop 
    hardware light metering overwriting the user's choice).
  * Allow Presets to be scheduled for a set time each day.
  * The DBus-events default setting has been corrected to true/enabled.
  * Dragging the Preset-Dialog elevation to below the horizon now 
    works properly (previously it was jerky).

OBS-URL: https://build.opensuse.org/package/show/utilities/vdu_controls?expand=0&rev=50
2025-07-13 22:11:54 +00:00
10505d87c4 Accepting request 1284951 from utilities
OBS-URL: https://build.opensuse.org/request/show/1284951
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/vdu_controls?expand=0&rev=14
2025-06-12 13:53:08 +00:00
Michael Hamilton
12dd151825 Accepting request 1284950 from home:mchnz:branches:utilities
- Version 2.4.0:
  * Added the ability to estimate the solar-illumination for a given
    geolocation and time. 
  * Added semi-automatic brightness adjustment proportional to 
    geolocated solar-illumination.
  * Ambient-light-level slider: when the slider is manually adjusted,
    it has the side-effect of determining the ratio of 
    indoor-illumination to solar-illumination (the the daylight-factor,
    DF).
  * Light-Metering dialog: semi-automatic metering replaces manual 
    metering.
  * Light-Metering dialog: added a display of estimated outdoor-lux (Eo)
    and the current daylight-factor (DF).
  * Light-Metering dialog: added a plot of the current day's estimated
    solar and indoor illumination.
  * Light-Metering dialog: replaced the profile-selector combo-box with
    a list for easier accessibility.
  * Light-Metering dialog: added the ability to dynamically adjust
    for display DPI.
  * Preset dialog: added an option to save/restore the daylight-factor.
    This can be used to save daylight factors for various conditions,
    or to activate them at a solar-elevation.
  * Settings dialog: disabling protect-nvam now works properly for
    adjustments due to light-metering.
  * Duplicate Lux-profile points are filtered out to prevent confusing
    the UI and lux evaluation process.
  * DBus ddcutil-service: altered the detection parameters to request
    only valid displays (prevents errors).
  * Ambient-light brightness adjustment: prevent an infinite-loop if
    no brightness controls are enabled.
  * Preset-restoration and ambient-light brightness-adjustment now
    share the same code for background operations.
  * Model-only config files are no longer created, they're confusing
    and likely not used (they can still be created manually with a 
    text editor).

OBS-URL: https://build.opensuse.org/request/show/1284950
OBS-URL: https://build.opensuse.org/package/show/utilities/vdu_controls?expand=0&rev=48
2025-06-11 23:21:27 +00:00
9db2ff6a43 Accepting request 1273539 from utilities
OBS-URL: https://build.opensuse.org/request/show/1273539
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/vdu_controls?expand=0&rev=13
2025-04-30 17:04:27 +00:00
Michael Hamilton
02c2bcaf0f - Update to version 2.3.0:
* Fix the doze function, this improves the responsiveness of all
    slider controls.
  * Fix an infinite loop if menu->quit is used when the "Failed to 
    obtain capabilities" dialog is showing.
  * The Settings-Dialog has been reorganized to make it scrollable.
  * When lux options are enabled, the tray will show the icon for the 
    current light-level (if no Preset is active). 
  * Renamed two light-light levels more appropriately (room becomes
    subdued, rise-set becomes twilight).
  * Support a user-defined ddcutil-emulator executable for controlling
    laptop-panels or other non-DDC-capable displays. A template sample
    emulator written in bash is included as a DIY starter 
    (sample-scripts/laptop-ddcutil-emulator.bash).
  * Add smart-uses-xcb option to control the use of XWayland for the
    smart positioning of windows (defaults to yes).
  * Fix title-bars on sub-windows in COSMIC. 
  * The About Dialog now includes some desktop and platform
    information.

OBS-URL: https://build.opensuse.org/package/show/utilities/vdu_controls?expand=0&rev=46
2025-04-30 01:38:26 +00:00
f39db32d3c Accepting request 1254831 from utilities
OBS-URL: https://build.opensuse.org/request/show/1254831
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/vdu_controls?expand=0&rev=12
2025-03-21 19:22:26 +00:00
Michael Hamilton
bfd29b4a15 Accepting request 1254830 from home:mchnz:branches:utilities
- Version 2.2.0
  * Add a vdu-name option for assigning meaningful/user-friendly names 
    to each VDU.
  * Implement an order-by-name option that orders lists and tabs by 
    VDU name.
  * Hovering over a settings-dialog tab-name or save-button reveals the
    settings-filename as a tooltip. 
  * If smart-window is enabled in a Wayland desktop, automatically use
    XWayland. (Wayland doesn't allow an application to precisely place 
    it's own windows!)
  * Altering the smart-window option now requires a restart (due to the 
    Wayland/XWayland changes).
  * The smart-window option save/restore of main-window has been made 
    more consistent.
  * The COSMIC desktop is treated as GNOME-like (the system-tray 
    right-mouse menu includes a "control-panel" menu-item).

OBS-URL: https://build.opensuse.org/request/show/1254830
OBS-URL: https://build.opensuse.org/package/show/utilities/vdu_controls?expand=0&rev=44
2025-03-20 20:39:54 +00:00
461aa53e2f Accepting request 1251482 from utilities
OBS-URL: https://build.opensuse.org/request/show/1251482
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/vdu_controls?expand=0&rev=11
2025-03-10 18:07:20 +00:00
Michael Hamilton
e5938e265f - Version 2.1,4
* Provide a setting for enabling dbus-events - ddcutil-service DPMS and hotplug detection. 
  * Default the dbus-event setting to off, which is less troublesome for some VDUs/GPUs/drivers.

OBS-URL: https://build.opensuse.org/package/show/utilities/vdu_controls?expand=0&rev=42
2025-03-09 01:03:14 +00:00
4482bf8fdc Accepting request 1246802 from utilities
OBS-URL: https://build.opensuse.org/request/show/1246802
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/vdu_controls?expand=0&rev=10
2025-02-19 14:58:59 +00:00
Michael Hamilton
0a22873e57 - Version 2.1.3
* Fix the error-dialog option "Ignore-VDU" when ddcutil cannot communicate with a VDU.    
  * Avoid abrupt u-turns in automatic brightness, don't reassess the lux level while making an adjustment.
  * Update the EDID-parser to accept the command line output from ddcutil 2.2 (for those not using ddcutil-service).

OBS-URL: https://build.opensuse.org/package/show/utilities/vdu_controls?expand=0&rev=40
2025-02-18 21:38:44 +00:00
17c08b21dc Accepting request 1226989 from utilities
OBS-URL: https://build.opensuse.org/request/show/1226989
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/vdu_controls?expand=0&rev=9
2024-11-28 21:42:56 +00:00
Michael Hamilton
50554523b4 - Version 2.1.2
* Replace the Preset-scheduler with an implementation that remains accurate after PC-sleep/hibernation.
  * Fix the day-rollover which was scheduling for the wrong day if triggered at 12:59:59. 
  * When performing a set-vcp, don't increment the NVRAM write count if the VDU doesn't respond.
  * When reconfiguring VDU controllers, discard pending VDU VCP changes from previous controllers. 
  * Eliminate a potential for deadlock when handling change-events from ddcutil-service.
  * Better handle ddcutil-service unexpected event types (don't raise an error dialog).
  * The main window height will now automatically resize to accommodate the number of controls present.
  * Toggling lux brightness-interpolation now immediately updates the profile-plot to reflect the change.
  * Fix the Lux Dialog, it was turning off interpolation when first constructed.

OBS-URL: https://build.opensuse.org/package/show/utilities/vdu_controls?expand=0&rev=38
2024-11-28 00:55:03 +00:00
4 changed files with 165 additions and 4 deletions

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9831cf143826769b7256d536fed0b2c3d8572270dab9c39a3a0e0bdded2288ac
size 3249206

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5ead8e9b93a13ac49a8dc284df8829373559438e5f0edd0aa18ec17441d360e3
size 3281506

View File

@@ -1,3 +1,158 @@
-------------------------------------------------------------------
Fri Aug 29 02:21:40 UTC 2025 - Michael Hamilton <michael@actrix.gen.nz>
- Version 2.4.3
* Fix a rare TypeError when light metering.
* Some code cleanups for the splash screen.
-------------------------------------------------------------------
Mon Jul 28 22:00:55 UTC 2025 - Michael Hamilton <michael@actrix.gen.nz>
- Version 2.4.2
* Fix the Lux-Dialog's display of the Daylight-Factor for non
semi-automatic metering.
* Make sure the tray-icon always shows the correct lux-level icon.
* Correct the lux-zone boundaries on the ambient slider.
-------------------------------------------------------------------
Sun Jul 13 21:47:08 UTC 2025 - Michael Hamilton <michael@actrix.gen.nz>
- Version 2.4.1
* Support PyQt6 before PyQt5 goes out of support.
* PyQt6 is used by default, with a fallback to PyQt5 should it
not be available.
* Add the prefer-qt6 option to the Settings-Dialog (you may
disable this option to force the use of PyQt5).
* Various changes to UI layouts to accommodate both Qt5 and Qt6
(including Qt6 High-DPI scaling).
* Minor alterations to the main-window layout to make the more
spacious Qt6 styling more compact.
* Renamed the smart-uses-xcb option to smart-uses-xwayland. This
better reflects what the option does.
* Fixed smart-window preservation when the app was closed from the
tray without ever showing the main window.
* Fixed weather selection: automatically restore any missing
weather definition files.
* Fixed initialization-preset error handling: fix a reference
to an undefined variable.
* Only persist lux_daylight_factor if in semi-auto mode (stop
hardware light metering overwriting the user's choice).
* Allow Presets to be scheduled for a set time each day.
* The DBus-events default setting has been corrected to true/enabled.
* Dragging the Preset-Dialog elevation to below the horizon now
works properly (previously it was jerky).
-------------------------------------------------------------------
Tue Jun 10 23:52:30 UTC 2025 - Michael Hamilton <michael@actrix.gen.nz>
- Version 2.4.0:
* Added the ability to estimate the solar-illumination for a given
geolocation and time.
* Added semi-automatic brightness adjustment proportional to
geolocated solar-illumination.
* Ambient-light-level slider: when the slider is manually adjusted,
it has the side-effect of determining the ratio of
indoor-illumination to solar-illumination (the the daylight-factor,
DF).
* Light-Metering dialog: semi-automatic metering replaces manual
metering.
* Light-Metering dialog: added a display of estimated outdoor-lux (Eo)
and the current daylight-factor (DF).
* Light-Metering dialog: added a plot of the current day's estimated
solar and indoor illumination.
* Light-Metering dialog: replaced the profile-selector combo-box with
a list for easier accessibility.
* Light-Metering dialog: added the ability to dynamically adjust
for display DPI.
* Preset dialog: added an option to save/restore the daylight-factor.
This can be used to save daylight factors for various conditions,
or to activate them at a solar-elevation.
* Settings dialog: disabling protect-nvam now works properly for
adjustments due to light-metering.
* Duplicate Lux-profile points are filtered out to prevent confusing
the UI and lux evaluation process.
* DBus ddcutil-service: altered the detection parameters to request
only valid displays (prevents errors).
* Ambient-light brightness adjustment: prevent an infinite-loop if
no brightness controls are enabled.
* Preset-restoration and ambient-light brightness-adjustment now
share the same code for background operations.
* Model-only config files are no longer created, they're confusing
and likely not used (they can still be created manually with a
text editor).
-------------------------------------------------------------------
Sat Apr 26 01:13:12 UTC 2025 - Michael Hamilton <michael@actrix.gen.nz>
- Update to version 2.3.0:
* Fix the doze function, this improves the responsiveness of all
slider controls.
* Fix an infinite loop if menu->quit is used when the "Failed to
obtain capabilities" dialog is showing.
* The Settings-Dialog has been reorganized to make it scrollable.
* When lux options are enabled, the tray will show the icon for the
current light-level (if no Preset is active).
* Renamed two light-light levels more appropriately (room becomes
subdued, rise-set becomes twilight).
* Support a user-defined ddcutil-emulator executable for controlling
laptop-panels or other non-DDC-capable displays. A template sample
emulator written in bash is included as a DIY starter
(sample-scripts/laptop-ddcutil-emulator.bash).
* Add smart-uses-xcb option to control the use of XWayland for the
smart positioning of windows (defaults to yes).
* Fix title-bars on sub-windows in COSMIC.
* The About Dialog now includes some desktop and platform
information.
-------------------------------------------------------------------
Thu Mar 20 19:57:56 UTC 2025 - Michael Hamilton <michael@actrix.gen.nz>
- Version 2.2.0
* Add a vdu-name option for assigning meaningful/user-friendly names
to each VDU.
* Implement an order-by-name option that orders lists and tabs by
VDU name.
* Hovering over a settings-dialog tab-name or save-button reveals the
settings-filename as a tooltip.
* If smart-window is enabled in a Wayland desktop, automatically use
XWayland. (Wayland doesn't allow an application to precisely place
it's own windows!)
* Altering the smart-window option now requires a restart (due to the
Wayland/XWayland changes).
* The smart-window option save/restore of main-window has been made
more consistent.
* The COSMIC desktop is treated as GNOME-like (the system-tray
right-mouse menu includes a "control-panel" menu-item).
-------------------------------------------------------------------
Sun Mar 9 00:58:46 UTC 2025 - Michael Hamilton <michael@actrix.gen.nz>
- Version 2.1,4
* Provide a setting for enabling dbus-events - ddcutil-service DPMS and hotplug detection.
* Default the dbus-event setting to off, which is less troublesome for some VDUs/GPUs/drivers.
-------------------------------------------------------------------
Tue Feb 18 20:56:03 UTC 2025 - Michael Hamilton <michael@actrix.gen.nz>
- Version 2.1.3
* Fix the error-dialog option "Ignore-VDU" when ddcutil cannot communicate with a VDU.
* Avoid abrupt u-turns in automatic brightness, don't reassess the lux level while making an adjustment.
* Update the EDID-parser to accept the command line output from ddcutil 2.2 (for those not using ddcutil-service).
-------------------------------------------------------------------
Wed Nov 27 19:49:17 UTC 2024 - Michael Hamilton <michael@actrix.gen.nz>
- Version 2.1.2
* Replace the Preset-scheduler with an implementation that remains accurate after PC-sleep/hibernation.
* Fix the day-rollover which was scheduling for the wrong day if triggered at 12:59:59.
* When performing a set-vcp, don't increment the NVRAM write count if the VDU doesn't respond.
* When reconfiguring VDU controllers, discard pending VDU VCP changes from previous controllers.
* Eliminate a potential for deadlock when handling change-events from ddcutil-service.
* Better handle ddcutil-service unexpected event types (don't raise an error dialog).
* The main window height will now automatically resize to accommodate the number of controls present.
* Toggling lux brightness-interpolation now immediately updates the profile-plot to reflect the change.
* Fix the Lux Dialog, it was turning off interpolation when first constructed.
-------------------------------------------------------------------
Sun Oct 13 23:42:30 UTC 2024 - Michael Hamilton <michael@actrix.gen.nz>

View File

@@ -18,7 +18,7 @@
Name: vdu_controls
Version: 2.1.1
Version: 2.4.3
Release: 0
Summary: Visual Display Unit virtual control panel
License: GPL-3.0-or-later
@@ -33,7 +33,11 @@ Requires: ddcutil
Requires: noto-sans-math-fonts
Requires: noto-sans-symbols2-fonts
Requires: python3
%if 0%{?sle_version} > 150000 && 0%{?is_opensuse}
Requires: python3-qt5
%else
Requires: python3-qt6
%endif
Recommends: ddcutil-service
Recommends: python3-pyserial
%endif
@@ -107,12 +111,14 @@ ln -s -f %{_datadir}/icons %{_datadir}/%{name}/icons/system-icons
%{_datadir}/%{name}/sample-scripts/lux-from-webcam.bash
%{_datadir}/%{name}/sample-scripts/lux-from-webcam.py
%{_datadir}/%{name}/sample-scripts/vlux_meter.py
%{_datadir}/%{name}/sample-scripts/laptop-ddcutil-emulator.bash
%ghost %{_datadir}/%{name}/icons/system-icons
# Build service notes:
# 0) Build service page: https://build.opensuse.org/package/show/utilities/vdu_controls
# 1) branch the package (link on left margin of page)
# 2) upload/alter package files in branch (should be the github versions)
# check that changelog lines are less than 67 characters.
# 3) wait for builds to complete
# 4) when OK/finished/happy, submit
# 5) check assigned tasks: self approve submission and opt to remove branch