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:
@@ -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: {
|
||||
|
||||
Reference in New Issue
Block a user