mirror of
https://github.com/nix-community/home-manager
synced 2024-12-27 12:19:48 +01:00
i3-sway: config.focus.wrapping deprecates forceWrapping (#3467)
Stop using the legacy syntax described in the i3 documentation: https://i3wm.org/docs/userguide.html#_focus_wrapping
This commit is contained in:
parent
2827b53064
commit
d633afe0d9
9 changed files with 38 additions and 21 deletions
|
@ -160,7 +160,7 @@ let
|
|||
"floating_modifier ${floating.modifier}"
|
||||
(windowBorderString window floating)
|
||||
"hide_edge_borders ${window.hideEdgeBorders}"
|
||||
"force_focus_wrapping ${lib.hm.booleans.yesNo focus.forceWrapping}"
|
||||
"focus_wrapping ${focus.wrapping}"
|
||||
"focus_follows_mouse ${lib.hm.booleans.yesNo focus.followMouse}"
|
||||
"focus_on_window_activation ${focus.newWindow}"
|
||||
"mouse_warping ${if focus.mouseWarping then "output" else "none"}"
|
||||
|
@ -256,16 +256,15 @@ in {
|
|||
++ flatten (map (b:
|
||||
optional (isList b.fonts)
|
||||
"Specifying i3.config.bars[].fonts as a list is deprecated. Use the attrset version instead.")
|
||||
cfg.config.bars);
|
||||
cfg.config.bars) ++ [
|
||||
(mkIf (any (s: s.workspace != null) cfg.config.startup)
|
||||
("'xsession.windowManager.i3.config.startup.*.workspace' is deprecated, "
|
||||
+ "use 'xsession.windowManager.i3.config.assigns' instead."
|
||||
+ "See https://github.com/nix-community/home-manager/issues/265."))
|
||||
(mkIf cfg.config.focus.forceWrapping
|
||||
("'xsession.windowManager.i3.config.focus.forceWrapping' is deprecated, "
|
||||
+ "use 'xsession.windowManager.i3.config.focus.wrapping' instead."))
|
||||
];
|
||||
})
|
||||
|
||||
(mkIf (cfg.config != null
|
||||
&& (any (s: s.workspace != null) cfg.config.startup)) {
|
||||
warnings = [
|
||||
("'xsession.windowManager.i3.config.startup.*.workspace' is deprecated, "
|
||||
+ "use 'xsession.windowManager.i3.config.assigns' instead."
|
||||
+ "See https://github.com/nix-community/home-manager/issues/265.")
|
||||
];
|
||||
})
|
||||
]);
|
||||
}
|
||||
|
|
|
@ -510,13 +510,28 @@ in {
|
|||
if (isSway && isBool val) then (lib.hm.booleans.yesNo val) else val;
|
||||
};
|
||||
|
||||
wrapping = mkOption {
|
||||
type = types.enum [ "yes" "no" "force" "workspace" ];
|
||||
default = {
|
||||
i3 = if cfg.config.focus.forceWrapping then "force" else "yes";
|
||||
# the sway module's logic was inverted and incorrect,
|
||||
# so preserve it for backwards compatibility purposes
|
||||
sway = if cfg.config.focus.forceWrapping then "yes" else "no";
|
||||
}.${moduleName};
|
||||
description = ''
|
||||
Whether the window focus commands automatically wrap around the edge of containers.
|
||||
|
||||
See <link xlink:href="https://i3wm.org/docs/userguide.html#_focus_wrapping"/>
|
||||
'';
|
||||
};
|
||||
|
||||
forceWrapping = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Whether to force focus wrapping in tabbed or stacked container.
|
||||
Whether to force focus wrapping in tabbed or stacked containers.
|
||||
|
||||
See <link xlink:href="https://i3wm.org/docs/userguide.html#_focus_wrapping"/>
|
||||
This option is deprecated, use <option>focus.wrapping</option> instead.
|
||||
'';
|
||||
};
|
||||
|
||||
|
|
|
@ -271,7 +271,7 @@ let
|
|||
"floating_modifier ${floating.modifier}"
|
||||
(windowBorderString window floating)
|
||||
"hide_edge_borders ${window.hideEdgeBorders}"
|
||||
"focus_wrapping ${lib.hm.booleans.yesNo focus.forceWrapping}"
|
||||
"focus_wrapping ${focus.wrapping}"
|
||||
"focus_follows_mouse ${focus.followMouse}"
|
||||
"focus_on_window_activation ${focus.newWindow}"
|
||||
"mouse_warping ${
|
||||
|
@ -442,7 +442,10 @@ in {
|
|||
++ flatten (map (b:
|
||||
optional (isList b.fonts)
|
||||
"Specifying sway.config.bars[].fonts as a list is deprecated. Use the attrset version instead.")
|
||||
cfg.config.bars);
|
||||
cfg.config.bars) ++ [
|
||||
(mkIf cfg.config.focus.forceWrapping
|
||||
"sway.config.focus.forceWrapping is deprecated, use focus.wrapping instead.")
|
||||
];
|
||||
})
|
||||
|
||||
{
|
||||
|
|
|
@ -3,7 +3,7 @@ floating_modifier Mod1
|
|||
default_border normal 2
|
||||
default_floating_border normal 2
|
||||
hide_edge_borders none
|
||||
force_focus_wrapping no
|
||||
focus_wrapping yes
|
||||
focus_follows_mouse yes
|
||||
focus_on_window_activation smart
|
||||
mouse_warping output
|
||||
|
|
|
@ -3,7 +3,7 @@ floating_modifier Mod1
|
|||
default_border normal 2
|
||||
default_floating_border normal 2
|
||||
hide_edge_borders none
|
||||
force_focus_wrapping no
|
||||
focus_wrapping yes
|
||||
focus_follows_mouse no
|
||||
focus_on_window_activation smart
|
||||
mouse_warping output
|
||||
|
|
|
@ -3,7 +3,7 @@ floating_modifier Mod1
|
|||
default_border normal 2
|
||||
default_floating_border normal 2
|
||||
hide_edge_borders none
|
||||
force_focus_wrapping no
|
||||
focus_wrapping yes
|
||||
focus_follows_mouse yes
|
||||
focus_on_window_activation smart
|
||||
mouse_warping output
|
||||
|
|
|
@ -3,7 +3,7 @@ floating_modifier Mod1
|
|||
default_border normal 2
|
||||
default_floating_border normal 2
|
||||
hide_edge_borders none
|
||||
force_focus_wrapping no
|
||||
focus_wrapping yes
|
||||
focus_follows_mouse yes
|
||||
focus_on_window_activation smart
|
||||
mouse_warping output
|
||||
|
|
|
@ -3,7 +3,7 @@ floating_modifier Mod1
|
|||
default_border normal 2
|
||||
default_floating_border normal 2
|
||||
hide_edge_borders none
|
||||
force_focus_wrapping no
|
||||
focus_wrapping yes
|
||||
focus_follows_mouse yes
|
||||
focus_on_window_activation smart
|
||||
mouse_warping output
|
||||
|
|
|
@ -3,7 +3,7 @@ floating_modifier Mod1
|
|||
default_border normal 2
|
||||
default_floating_border normal 2
|
||||
hide_edge_borders none
|
||||
force_focus_wrapping no
|
||||
focus_wrapping yes
|
||||
focus_follows_mouse yes
|
||||
focus_on_window_activation smart
|
||||
mouse_warping output
|
||||
|
|
Loading…
Reference in a new issue