hyprland/workspaces: allow using the original window class/title
This turns the values of window rewrite rules in hyprland/workspaces from static strings to format strings with the values {class} and {title} available.pull/2787/head
parent
99d26e44ee
commit
ff09ef6d71
|
@ -24,7 +24,7 @@ Addressed by *hyprland/workspaces*
|
||||||
*window-rewrite*: ++
|
*window-rewrite*: ++
|
||||||
typeof: object ++
|
typeof: object ++
|
||||||
Regex rules to map window class to an icon or preferred method of representation for a workspace's window.
|
Regex rules to map window class to an icon or preferred method of representation for a workspace's window.
|
||||||
Keys are the rules, while the values are the methods of representation.
|
Keys are the rules, while the values are the methods of representation. Values may use the placeholders {class} and {title} to use the window's original class and/or title respectively.
|
||||||
Rules may specify `class<...>`, `title<...>`, or both in order to fine-tune the matching.
|
Rules may specify `class<...>`, `title<...>`, or both in order to fine-tune the matching.
|
||||||
|
|
||||||
*window-rewrite-default*:
|
*window-rewrite-default*:
|
||||||
|
|
|
@ -891,7 +891,9 @@ std::string Workspaces::getRewrite(std::string window_class, std::string window_
|
||||||
} else {
|
} else {
|
||||||
windowReprKey = fmt::format("class<{}>", window_class);
|
windowReprKey = fmt::format("class<{}>", window_class);
|
||||||
}
|
}
|
||||||
return m_windowRewriteRules.get(windowReprKey);
|
auto const rewriteRule = m_windowRewriteRules.get(windowReprKey);
|
||||||
|
return fmt::format(fmt::runtime(rewriteRule), fmt::arg("class", window_class),
|
||||||
|
fmt::arg("title", window_title));
|
||||||
}
|
}
|
||||||
|
|
||||||
WindowCreationPayload::WindowCreationPayload(std::string workspace_name,
|
WindowCreationPayload::WindowCreationPayload(std::string workspace_name,
|
||||||
|
|
Loading…
Reference in New Issue