window: Add adjust_fullscreen_monitor_rect virtual method
Add an adjust_fullscreen_monitor_rect virtual method to MetaWindowClass and call this from setup_constraint_info() if the window is fullscreen. This allows MetaWindowClass to adjust the monitor-rectangle used to size the window when going fullscreen, which will be used in further commits for a workaround related to fullscreen games under Xwayland. https://gitlab.gnome.org/GNOME/mutter/merge_requests/739
This commit is contained in:
@ -413,11 +413,7 @@ setup_constraint_info (ConstraintInfo *info,
|
||||
logical_monitor,
|
||||
&info->work_area_monitor);
|
||||
|
||||
if (!window->fullscreen || !meta_window_has_fullscreen_monitors (window))
|
||||
{
|
||||
info->entire_monitor = logical_monitor->rect;
|
||||
}
|
||||
else
|
||||
if (window->fullscreen && meta_window_has_fullscreen_monitors (window))
|
||||
{
|
||||
info->entire_monitor = window->fullscreen_monitors.top->rect;
|
||||
meta_rectangle_union (&info->entire_monitor,
|
||||
@ -430,6 +426,12 @@ setup_constraint_info (ConstraintInfo *info,
|
||||
&window->fullscreen_monitors.right->rect,
|
||||
&info->entire_monitor);
|
||||
}
|
||||
else
|
||||
{
|
||||
info->entire_monitor = logical_monitor->rect;
|
||||
if (window->fullscreen)
|
||||
meta_window_adjust_fullscreen_monitor_rect (window, &info->entire_monitor);
|
||||
}
|
||||
|
||||
cur_workspace = window->display->workspace_manager->active_workspace;
|
||||
info->usable_screen_region =
|
||||
|
Reference in New Issue
Block a user