Commit bd719e46da3325a43e514432438dbd781e2194c1 Parent: d4ee960e9e832376b1e1879cb291c315a1b5b2ac Author: mcol <mcol@posteo.net> Date: 2021-02-12 23:45:02 +0000 Committer: mcol <mcol@posteo.net> Committed: 2021-02-12 23:45:02 +0000 add general corner colours even without mods, to bind to actions
wimp.conf Modified
@@ -19,16 +19,18 @@ #auto_start ${XDG_CONFIG_HOME:-$HOME}/.config/wimp/autostart #desks 2 -#desk 1 background #5D479D +#desk 1 background #31475c #desk 1 borders normal #3e3e73 -#desk 1 borders focus #998dd1 -#desk 1 borders width 4 -#desk 1 corners resize #406794 +#desk 1 corners normal #31315c +#desk 1 borders focus #47315c +#desk 1 corners focus #7e5992 +#desk 1 borders width 6 #desk 2 background #3e3e73 -#desk 2 borders normal #5D479D -#desk 2 borders focus #998dd1 +#desk 2 borders normal #31475c +#desk 1 corners normal #3e5973 +#desk 2 borders focus #47315c +#desk 1 corners focus #7e5992 #desk 2 borders width 6 -#desk 2 corners resize #3e3e73 desk 1 background ~/path/to/tiling-image.png # Magnification bounds
src/types.h Modified
@@ -88,7 +88,6 @@ struct wl_listener request_set_selection_listener; struct wl_list keyboards; enum wlr_keyboard_modifier mod; - bool mod_on; struct wl_list key_bindings; struct wl_list mouse_bindings; @@ -173,7 +172,8 @@ float background[4]; float border_normal[4]; float border_focus[4]; - float corner_resize[4]; + float corner_normal[4]; + float corner_focus[4]; int border_width; struct wallpaper *wallpaper; double panned_x, panned_y;
src/output.c Modified
@@ -58,29 +58,21 @@ rdata->is_focussed ? wimp.current_desk->border_focus : wimp.current_desk->border_normal, output->transform_matrix ); - if (wimp.mod_on) { - struct wlr_box corners = { - .x = borders.x, - .y = borders.y, - .width = 24, - .height = 24, - }; - wlr_render_rect( - rdata->renderer, &corners, wimp.current_desk->corner_resize, output->transform_matrix - ); - corners.x = borders.x + borders.width - 24; - wlr_render_rect( - rdata->renderer, &corners, wimp.current_desk->corner_resize, output->transform_matrix - ); - corners.y = borders.y + borders.height - 24; - wlr_render_rect( - rdata->renderer, &corners, wimp.current_desk->corner_resize, output->transform_matrix - ); - corners.x = borders.x; - wlr_render_rect( - rdata->renderer, &corners, wimp.current_desk->corner_resize, output->transform_matrix - ); - } + struct wlr_box corners = { + .x = borders.x, + .y = borders.y, + .width = 24, + .height = 24, + }; + float *corner = rdata->is_focussed ? + wimp.current_desk->corner_focus : wimp.current_desk->corner_normal; + wlr_render_rect(rdata->renderer, &corners, corner, output->transform_matrix); + corners.x = borders.x + borders.width - 24; + wlr_render_rect(rdata->renderer, &corners, corner, output->transform_matrix); + corners.y = borders.y + borders.height - 24; + wlr_render_rect(rdata->renderer, &corners, corner, output->transform_matrix); + corners.x = borders.x; + wlr_render_rect(rdata->renderer, &corners, corner, output->transform_matrix); } }
src/main.c Modified
@@ -29,14 +29,13 @@ .on_drag3 = NULL, .on_pinch = NULL, .desk_count = 0, - .mod_on = false, .mark_waiting = false, .mark_indicator.box.width = 25, .mark_indicator.box.height = 25, .mark_indicator.box.x = 0, .mark_indicator.box.y = 0, .scratchpad_waiting = false, - .auto_focus = false, + .auto_focus = true, };
src/input.c Modified
@@ -52,15 +52,6 @@ handled = true; } } - if (!wimp.mod_on) { - wimp.mod_on = true; - damage_all_views(); - } - } else { - if (wimp.mod_on) { - wimp.mod_on = false; - damage_all_views(); - } } if (!handled){
src/desk.c Modified
@@ -10,11 +10,12 @@ struct desk *desk = calloc(1, sizeof(struct desk)); wl_list_insert(wimp.desks.prev, &desk->link); wl_list_init(&desk->views); - assign_colour("#5D479D", desk->background); + assign_colour("#31475c", desk->background); assign_colour("#3e3e73", desk->border_normal); - assign_colour("#998dd1", desk->border_focus); - assign_colour("#406794", desk->corner_resize); - desk->border_width = 4; + assign_colour("#31315c", desk->corner_normal); + assign_colour("#47315c", desk->border_focus); + assign_colour("#7e5992", desk->corner_focus); + desk->border_width = 6; desk->wallpaper = NULL; desk->index = wimp.desk_count; desk->zoom = 1;
src/config.c Modified
@@ -22,23 +22,15 @@ static const char *DEFAULT_CONFIG = "\n\ desks 2\n\ -desk 1 background #5D479D\n\ -desk 1 borders normal #3e3e73\n\ -desk 1 borders focus #998dd1\n\ -desk 1 borders width 4\n\ -desk 1 corners resize #406794\n\ desk 2 background #3e3e73\n\ -desk 2 borders normal #5D479D\n\ -desk 2 borders focus #998dd1\n\ -desk 2 borders width 6\n\ -desk 2 corners resize #3e3e73\n\ +desk 2 borders normal #31475c\n\ +desk 2 corners normal #3e5973\n\ zoom_min 0.2\n\ zoom_max 5\n\ -mark_indicator #000000\n\ +mark_indicator #47315c\n\ vt_switching on\n\ scroll_direction natural\n\ set_modifier Logo\n\ -auto_focus on\n\ bind Ctrl Escape shutdown\n\ "; @@ -591,11 +583,14 @@ } } - // desk <index> corners resize <#rrggbb> + // desk <index> corners [focus|normal] <#rrggbb> else if (!strcasecmp(s, "corners")) { s = strtok(NULL, " \t\n\r"); - if (!strcasecmp(s, "resize")) { - assign_colour(strtok(NULL, " \t\n\r"), desk->corner_resize); + if (!strcasecmp(s, "normal")) { + assign_colour(strtok(NULL, " \t\n\r"), desk->corner_normal); + } + else if (!strcasecmp(s, "focus")) { + assign_colour(strtok(NULL, " \t\n\r"), desk->corner_focus); } } }