mirror of
https://github.com/labwc/labwc.git
synced 2025-11-04 13:30:07 -05:00
Convert SSD to scene nodes
This commit is contained in:
parent
f2d40a8d69
commit
5862b65f89
23 changed files with 1134 additions and 557 deletions
24
src/cursor.c
24
src/cursor.c
|
|
@ -178,7 +178,6 @@ static void
|
|||
process_cursor_motion(struct server *server, uint32_t time)
|
||||
{
|
||||
static bool cursor_name_set_by_server;
|
||||
static enum ssd_part_type last_button_hover = LAB_SSD_NONE;
|
||||
|
||||
/* If the mode is non-passthrough, delegate to those functions. */
|
||||
if (server->input_mode == LAB_INPUT_STATE_MOVE) {
|
||||
|
|
@ -257,17 +256,24 @@ process_cursor_motion(struct server *server, uint32_t time)
|
|||
}
|
||||
}
|
||||
|
||||
/* Required for iconify/maximize/close button mouse-over deco */
|
||||
/* SSD button mouse-over */
|
||||
struct ssd_hover_state *hover = &server->ssd_hover_state;
|
||||
if (ssd_is_button(view_area)) {
|
||||
if (last_button_hover != view_area) {
|
||||
/* Cursor entered new button area */
|
||||
//damage_whole_current_output(server);
|
||||
last_button_hover = view_area;
|
||||
/* Cursor entered new button area */
|
||||
if (hover->view != view || hover->type != view_area) {
|
||||
if (hover->node) {
|
||||
wlr_scene_node_set_enabled(hover->node, false);
|
||||
}
|
||||
hover->view = view;
|
||||
hover->type = view_area;
|
||||
hover->node = ssd_button_hover_enable(view, view_area);
|
||||
}
|
||||
} else if (last_button_hover != LAB_SSD_NONE) {
|
||||
} else if (hover->node) {
|
||||
/* Cursor left button area */
|
||||
//damage_whole_current_output(server);
|
||||
last_button_hover = LAB_SSD_NONE;
|
||||
wlr_scene_node_set_enabled(hover->node, false);
|
||||
hover->view = NULL;
|
||||
hover->type = LAB_SSD_NONE;
|
||||
hover->node = NULL;
|
||||
}
|
||||
|
||||
if (surface &&
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue