add multimonitor

This commit is contained in:
2026-08-18 21:30:51 +02:00
parent 7d117f4ae5
commit f60dd06e7e
10 changed files with 470 additions and 34 deletions
+10
View File
@@ -59,6 +59,16 @@ Singleton {
return output ? (output.tags & (1 << index)) !== 0 : false;
}
/// Whether a tag belongs to this screen at all.
///
/// With `split_tags` on, each screen owns one slice of the tag set and the
/// rest live on the other monitors, so a bar that drew all nine would be
/// offering tags its screen cannot show. Every tag is owned when the split
/// is off, so the same bar works either way.
function tagOwned(output, index) {
return output ? (output.owned_tags & (1 << index)) !== 0 : true;
}
// A Socket that fails to connect cannot be revived: no state change is
// reported and re-asserting `connected` does not make it try again. So the
// socket lives in a Loader and a retry means building a new one. This is