1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-05-12 23:32:50 -04:00

Automatic Display Profiles Enhancement & Disabled Output Support (#2367)

* fix(niri): properly close KDL output block when disabled

* feat(display): parse off directive and sync disabled state from compositor configs

* feat(display): visual treatment and canvas filtering for disabled outputs

* feat(display): eager auto-profile generation with debounced auto-select

* refactor(display): pass target profile ID to confirmChanges and remove dead code

* fix(display): make profile dropdown reactive by binding to property directly

* i18n(display): add Disabled translation term for output state
This commit is contained in:
Kilian Mio
2026-05-11 15:34:51 +02:00
committed by GitHub
parent 2b6ae58bff
commit a5352623fd
9 changed files with 254 additions and 106 deletions
@@ -1,15 +1,26 @@
import QtQuick
import qs.Common
import qs.Services
Rectangle {
id: root
property var filteredOutputs: {
void (DisplayConfigState.pendingHyprlandChanges);
void (DisplayConfigState.pendingNiriChanges);
const all = DisplayConfigState.allOutputs || {};
const keys = Object.keys(all);
if (SettingsData.displayShowDisconnected)
return keys;
return keys.filter(k => all[k]?.connected);
return keys.filter(k => {
const od = all[k];
const isConnected = od?.connected ?? false;
if (!isConnected)
return SettingsData.displayShowDisconnected;
if (CompositorService.isHyprland && DisplayConfigState.getHyprlandSetting(od, k, "disabled", false))
return false;
if (CompositorService.isNiri && DisplayConfigState.getNiriSetting(od, k, "disabled", false))
return false;
return true;
});
}
property var filteredBounds: {