fix window title: move visibility to bargroup to avoid binding deadlock
This commit is contained in:
parent
f225d34202
commit
8c2ff6203f
4 changed files with 2 additions and 14 deletions
|
|
@ -144,6 +144,7 @@ PanelWindow {
|
||||||
id: _windowTitleGroup
|
id: _windowTitleGroup
|
||||||
Layout.minimumWidth: 0
|
Layout.minimumWidth: 0
|
||||||
clip: true
|
clip: true
|
||||||
|
visible: M.Modules.windowTitle.enable && M.NiriIpc.focusedTitle !== ""
|
||||||
M.WindowTitle {
|
M.WindowTitle {
|
||||||
width: Math.max(0, centerSection.x - _windowTitleGroup.x - 2 * M.Theme.groupPadding - M.Theme.groupSpacing)
|
width: Math.max(0, centerSection.x - _windowTitleGroup.x - 2 * M.Theme.groupPadding - M.Theme.groupSpacing)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -111,8 +111,6 @@ QtObject {
|
||||||
try {
|
try {
|
||||||
data = JSON.parse(raw);
|
data = JSON.parse(raw);
|
||||||
} catch (e) {}
|
} catch (e) {}
|
||||||
console.log("Modules._apply keys=" + Object.keys(data).length + " windowTitle=" + JSON.stringify(data.windowTitle));
|
|
||||||
|
|
||||||
// Enable all modules that aren't explicitly mentioned in the JSON
|
// Enable all modules that aren't explicitly mentioned in the JSON
|
||||||
for (const k of _moduleKeys) {
|
for (const k of _moduleKeys) {
|
||||||
if (!(k in data))
|
if (!(k in data))
|
||||||
|
|
@ -121,7 +119,6 @@ QtObject {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log("Modules._apply after defaults: windowTitle.enable=" + root.windowTitle.enable);
|
|
||||||
// Apply JSON overrides
|
// Apply JSON overrides
|
||||||
for (const k of Object.keys(data)) {
|
for (const k of Object.keys(data)) {
|
||||||
if (!(k in root))
|
if (!(k in root))
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,6 @@ QtObject {
|
||||||
command: ["niri", "msg", "--json", "focused-window"]
|
command: ["niri", "msg", "--json", "focused-window"]
|
||||||
stdout: StdioCollector {
|
stdout: StdioCollector {
|
||||||
onStreamFinished: {
|
onStreamFinished: {
|
||||||
console.log("NiriIpc._focusedProc raw='" + text.slice(0, 80) + "'");
|
|
||||||
try {
|
try {
|
||||||
const w = JSON.parse(text);
|
const w = JSON.parse(text);
|
||||||
if (w) {
|
if (w) {
|
||||||
|
|
@ -32,10 +31,7 @@ QtObject {
|
||||||
root.focusedTitle = "";
|
root.focusedTitle = "";
|
||||||
root.focusedAppId = "";
|
root.focusedAppId = "";
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {}
|
||||||
console.log("NiriIpc._focusedProc parse error: " + e);
|
|
||||||
}
|
|
||||||
console.log("NiriIpc focusedTitle='" + root.focusedTitle + "'");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,12 +7,6 @@ import "." as M
|
||||||
M.BarSection {
|
M.BarSection {
|
||||||
id: root
|
id: root
|
||||||
spacing: M.Theme.moduleSpacing
|
spacing: M.Theme.moduleSpacing
|
||||||
visible: M.Modules.windowTitle.enable && M.NiriIpc.focusedTitle !== ""
|
|
||||||
|
|
||||||
onVisibleChanged: console.log("WindowTitle visible=" + visible + " enable=" + M.Modules.windowTitle.enable + " title='" + M.NiriIpc.focusedTitle + "' width=" + width)
|
|
||||||
onWidthChanged: if (visible)
|
|
||||||
console.log("WindowTitle width=" + width + " centerSection.x would need bar ref")
|
|
||||||
|
|
||||||
tooltip: M.NiriIpc.focusedAppId ? M.NiriIpc.focusedAppId + "\n" + M.NiriIpc.focusedTitle : M.NiriIpc.focusedTitle
|
tooltip: M.NiriIpc.focusedAppId ? M.NiriIpc.focusedAppId + "\n" + M.NiriIpc.focusedTitle : M.NiriIpc.focusedTitle
|
||||||
|
|
||||||
readonly property string _iconSource: {
|
readonly property string _iconSource: {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue