feat: add dispatch increase_proportion

This commit is contained in:
DreamMaoMao 2025-03-16 20:42:32 +08:00
parent fdbfaf902d
commit 8e7111c816
3 changed files with 14 additions and 0 deletions

View file

@ -4,6 +4,7 @@ void toggle_scratchpad(const Arg *arg);
void focusdir(const Arg *arg);
void toggleoverview(const Arg *arg);
void set_proportion(const Arg *arg);
void increase_proportion(const Arg *arg);
void switch_proportion_preset(const Arg *arg);
void zoom(const Arg *arg);
void tagtoleft(const Arg *arg);

View file

@ -5746,6 +5746,16 @@ void set_proportion(const Arg *arg) {
}
}
void increase_proportion(const Arg *arg) {
if (selmon->sel) {
unsigned int max_client_width =
selmon->w.width - 2 * scroller_structs - gappih;
selmon->sel->scroller_proportion = MIN(MAX(arg->f + selmon->sel->scroller_proportion,0.1),1.0);
selmon->sel->geom.width = max_client_width * arg->f;
arrange(selmon, false);
}
}
// 显示所有tag 或 跳转到聚焦窗口的tag
void toggleoverview(const Arg *arg) {

View file

@ -402,6 +402,9 @@ FuncType parse_func_name(char *func_name, Arg *arg, char *arg_value) {
} else if (strcmp(func_name, "set_proportion") == 0) {
func = set_proportion;
(*arg).f = atof(arg_value);
} else if (strcmp(func_name, "increase_proportion") == 0) {
func = increase_proportion;
(*arg).f = atof(arg_value);
} else if (strcmp(func_name, "switch_proportion_preset") == 0) {
func = switch_proportion_preset;
} else if (strcmp(func_name, "viewtoleft") == 0) {