mirror of
https://github.com/labwc/labwc.git
synced 2025-11-02 09:01:47 -05:00
SnapToRegion: Add overlay while moving and pressing a modifier
This commit is contained in:
parent
0c31886061
commit
7e99d8ba08
10 changed files with 110 additions and 4 deletions
15
src/cursor.c
15
src/cursor.c
|
|
@ -12,6 +12,7 @@
|
|||
#include "dnd.h"
|
||||
#include "labwc.h"
|
||||
#include "menu/menu.h"
|
||||
#include "regions.h"
|
||||
#include "resistance.h"
|
||||
#include "ssd.h"
|
||||
#include "view.h"
|
||||
|
|
@ -186,6 +187,20 @@ process_cursor_move(struct server *server, uint32_t time)
|
|||
dy += server->grab_box.y;
|
||||
resistance_move_apply(view, &dx, &dy);
|
||||
view_move(view, dx, dy);
|
||||
|
||||
/* Region overlay */
|
||||
if (!regions_available()) {
|
||||
return;
|
||||
}
|
||||
struct wlr_keyboard *keyboard = &server->seat.keyboard_group->keyboard;
|
||||
if (keyboard_any_modifiers_pressed(keyboard)) {
|
||||
struct region *region = regions_from_cursor(server);
|
||||
if (region) {
|
||||
regions_show_overlay(view, &server->seat, region);
|
||||
} else {
|
||||
regions_hide_overlay(server, &server->seat);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue