v0.1.1: reservera plats fungerar ihop med autohide
Tidigare stängdes exclusive zone av så fort autohide var aktiv — maximerade fönster täckte då hela skärmen och dodge gömde docken, vilket motsäger vad 'reservera plats' lovar. Nu reserveras platsen alltid när avoid_windows är på: maximerade fönster stannar vid dockan (och triggar aldrig dodge), medan fönster man själv drar in i zonen fortfarande gömmer den. Tydligare etikett i settings + docs. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2
Cargo.lock
generated
2
Cargo.lock
generated
@@ -1042,7 +1042,7 @@ checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b"
|
||||
|
||||
[[package]]
|
||||
name = "waydock"
|
||||
version = "0.1.0"
|
||||
version = "0.1.1"
|
||||
dependencies = [
|
||||
"async-channel",
|
||||
"gtk4",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "waydock"
|
||||
version = "0.1.0"
|
||||
version = "0.1.1"
|
||||
edition = "2021"
|
||||
description = "Modern, resurssnål dock för Wayfire — transparent, JSON-konfigurerad, per-skärm"
|
||||
license = "MIT"
|
||||
|
||||
@@ -64,7 +64,10 @@ gruppering, fönsterlistans öppning och hover-effekt), **menyinnehåll**,
|
||||
// skuggutrymme läggs aldrig på förankrade sidor,
|
||||
// så 0 = verkligen kant i kant
|
||||
"layer": "top", // top | overlay | bottom (always-on-top = overlay)
|
||||
"avoid_windows": false, // true = reservera plats (exclusive zone)
|
||||
"avoid_windows": false, // true = reservera plats: maximerade fönster
|
||||
// stannar vid dockan. Funkar IHOP med autohide —
|
||||
// då gömmer dodge bara för fönster du själv
|
||||
// drar in över dockan
|
||||
|
||||
"appearance": {
|
||||
"background": "#222222", // panelfärg
|
||||
|
||||
@@ -133,7 +133,10 @@ fn configure_layer(win: >k::ApplicationWindow, cfg: &Config, monitor: &gdk::Mo
|
||||
}
|
||||
}
|
||||
}
|
||||
if cfg.avoid_windows && !cfg.autohide.enabled {
|
||||
// reservera plats fungerar ihop med autohide: maximerade fönster
|
||||
// stannar vid dockan (och triggar då aldrig dodge) — bara fönster
|
||||
// man själv drar in i zonen gömmer den
|
||||
if cfg.avoid_windows {
|
||||
win.auto_exclusive_zone_enable();
|
||||
} else {
|
||||
win.set_exclusive_zone(0);
|
||||
|
||||
@@ -467,7 +467,7 @@ fn build_layout_page(ctx: &Rc<Ctx>) -> gtk::ScrolledWindow {
|
||||
_ => Layer::Top,
|
||||
};
|
||||
}));
|
||||
row(&list, "Reservera plats (undvik fönster)", &switch(ctx, cfg.avoid_windows, |c, v| c.avoid_windows = v));
|
||||
row(&list, "Reservera plats (maximerade fönster stannar vid dockan)", &switch(ctx, cfg.avoid_windows, |c, v| c.avoid_windows = v));
|
||||
|
||||
heading(&list, "Marginaler");
|
||||
list.append(&margin_illustration(ctx));
|
||||
|
||||
Reference in New Issue
Block a user