Compare commits
1 Commits
3.28.2
...
wip/csd-fl
Author | SHA1 | Date | |
---|---|---|---|
![]() |
7e28a69c51 |
@@ -5727,6 +5727,32 @@ meta_window_get_input_rect (const MetaWindow *window,
|
|||||||
*rect = window->rect;
|
*rect = window->rect;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
get_custom_frame_extents (MetaWindow *window,
|
||||||
|
GtkBorder *extents)
|
||||||
|
{
|
||||||
|
if (!window->has_custom_frame_extents)
|
||||||
|
return;
|
||||||
|
|
||||||
|
*extents = window->custom_frame_extents;
|
||||||
|
|
||||||
|
if (META_WINDOW_MAXIMIZED_HORIZONTALLY (window))
|
||||||
|
{
|
||||||
|
extents->left = 0;
|
||||||
|
extents->right = 0;
|
||||||
|
}
|
||||||
|
else if (META_WINDOW_TILED_LEFT (window))
|
||||||
|
extents->left = 0;
|
||||||
|
else if (META_WINDOW_TILED_RIGHT (window))
|
||||||
|
extents->right = 0;
|
||||||
|
|
||||||
|
if (META_WINDOW_MAXIMIZED_VERTICALLY (window))
|
||||||
|
{
|
||||||
|
extents->top = 0;
|
||||||
|
extents->bottom = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* meta_window_client_rect_to_frame_rect:
|
* meta_window_client_rect_to_frame_rect:
|
||||||
* @window: a #MetaWindow
|
* @window: a #MetaWindow
|
||||||
@@ -5765,16 +5791,15 @@ meta_window_client_rect_to_frame_rect (MetaWindow *window,
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (window->has_custom_frame_extents)
|
GtkBorder extents = { 0 };
|
||||||
{
|
get_custom_frame_extents (window, &extents);
|
||||||
const GtkBorder *extents = &window->custom_frame_extents;
|
|
||||||
frame_rect->x += extents->left;
|
frame_rect->x += extents.left;
|
||||||
frame_rect->y += extents->top;
|
frame_rect->y += extents.top;
|
||||||
if (frame_rect->width != G_MAXINT)
|
if (frame_rect->width != G_MAXINT)
|
||||||
frame_rect->width -= extents->left + extents->right;
|
frame_rect->width -= extents.left + extents.right;
|
||||||
if (frame_rect->height != G_MAXINT)
|
if (frame_rect->height != G_MAXINT)
|
||||||
frame_rect->height -= extents->top + extents->bottom;
|
frame_rect->height -= extents.top + extents.bottom;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -5809,14 +5834,13 @@ meta_window_frame_rect_to_client_rect (MetaWindow *window,
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (window->has_custom_frame_extents)
|
GtkBorder extents = { 0 };
|
||||||
{
|
get_custom_frame_extents (window, &extents);
|
||||||
const GtkBorder *extents = &window->custom_frame_extents;
|
|
||||||
client_rect->x -= extents->left;
|
client_rect->x -= extents.left;
|
||||||
client_rect->y -= extents->top;
|
client_rect->y -= extents.top;
|
||||||
client_rect->width += extents->left + extents->right;
|
client_rect->width += extents.left + extents.right;
|
||||||
client_rect->height += extents->top + extents->bottom;
|
client_rect->height += extents.top + extents.bottom;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user