mirror of
https://github.com/brl/mutter.git
synced 2024-11-25 01:20:42 -05:00
make the checks here allow windows larger than the screen in addition to
2002-10-11 Havoc Pennington <hp@pobox.com> * src/stack.c (window_is_fullscreen_size): make the checks here allow windows larger than the screen in addition to exactly-screen-size * src/window.c (meta_window_configure_request): delete the "try to auto-enter-fullscreen-state" hack here, because it was broken, and the changes to the stacking code to move screen-size focused windows to the fullscreen layer should work better. (meta_window_new): remove auto-fullscreen hack from here too
This commit is contained in:
parent
30e3cf5050
commit
0df65b9f9f
12
ChangeLog
12
ChangeLog
@ -1,3 +1,15 @@
|
|||||||
|
2002-10-11 Havoc Pennington <hp@pobox.com>
|
||||||
|
|
||||||
|
* src/stack.c (window_is_fullscreen_size): make the checks here
|
||||||
|
allow windows larger than the screen in addition to
|
||||||
|
exactly-screen-size
|
||||||
|
|
||||||
|
* src/window.c (meta_window_configure_request): delete the "try to
|
||||||
|
auto-enter-fullscreen-state" hack here, because it was broken, and
|
||||||
|
the changes to the stacking code to move screen-size focused
|
||||||
|
windows to the fullscreen layer should work better.
|
||||||
|
(meta_window_new): remove auto-fullscreen hack from here too
|
||||||
|
|
||||||
2002-10-09 Havoc Pennington <hp@pobox.com>
|
2002-10-09 Havoc Pennington <hp@pobox.com>
|
||||||
|
|
||||||
* src/stack.c (apply_constraints): also keep utility/menu/toolbar
|
* src/stack.c (apply_constraints): also keep utility/menu/toolbar
|
||||||
|
12
src/stack.c
12
src/stack.c
@ -182,10 +182,10 @@ window_is_fullscreen_size (MetaWindow *window)
|
|||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
if (window->rect.x == 0 &&
|
if (window->rect.x <= 0 &&
|
||||||
window->rect.y == 0 &&
|
window->rect.y <= 0 &&
|
||||||
window->rect.width == window->screen->width &&
|
window->rect.width >= window->screen->width &&
|
||||||
window->rect.height == window->screen->height)
|
window->rect.height >= window->screen->height)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
@ -193,8 +193,8 @@ window_is_fullscreen_size (MetaWindow *window)
|
|||||||
{
|
{
|
||||||
if (window->rect.x == window->screen->xinerama_infos[i].x_origin &&
|
if (window->rect.x == window->screen->xinerama_infos[i].x_origin &&
|
||||||
window->rect.y == window->screen->xinerama_infos[i].y_origin &&
|
window->rect.y == window->screen->xinerama_infos[i].y_origin &&
|
||||||
window->rect.width == window->screen->xinerama_infos[i].width &&
|
window->rect.width >= window->screen->xinerama_infos[i].width &&
|
||||||
window->rect.height == window->screen->xinerama_infos[i].height)
|
window->rect.height >= window->screen->xinerama_infos[i].height)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
++i;
|
++i;
|
||||||
|
54
src/window.c
54
src/window.c
@ -635,24 +635,6 @@ meta_window_new (MetaDisplay *display, Window xwindow,
|
|||||||
outer.height >= workarea.height)
|
outer.height >= workarea.height)
|
||||||
meta_window_maximize (window);
|
meta_window_maximize (window);
|
||||||
}
|
}
|
||||||
/* Assume screen-size undecorated windows are intended to be
|
|
||||||
* fullscreen
|
|
||||||
*/
|
|
||||||
else if (window->has_fullscreen_func && !window->decorated &&
|
|
||||||
!window->maximized)
|
|
||||||
{
|
|
||||||
const MetaXineramaScreenInfo *xinerama;
|
|
||||||
MetaRectangle outer;
|
|
||||||
|
|
||||||
xinerama = meta_screen_get_xinerama_for_window (window->screen,
|
|
||||||
window);
|
|
||||||
|
|
||||||
meta_window_get_outer_rect (window, &outer);
|
|
||||||
|
|
||||||
if (outer.width >= xinerama->width &&
|
|
||||||
outer.height >= xinerama->height)
|
|
||||||
meta_window_make_fullscreen (window);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Sync stack changes */
|
/* Sync stack changes */
|
||||||
meta_stack_thaw (window->screen->stack);
|
meta_stack_thaw (window->screen->stack);
|
||||||
@ -3238,42 +3220,6 @@ meta_window_configure_request (MetaWindow *window,
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* If we went full-size for an undecorated window, then enter
|
|
||||||
* fullscreen mode. A hack for lame clients.
|
|
||||||
*/
|
|
||||||
if (window->has_fullscreen_func && !window->decorated &&
|
|
||||||
!window->maximized)
|
|
||||||
{
|
|
||||||
const MetaXineramaScreenInfo *xinerama;
|
|
||||||
MetaRectangle outer;
|
|
||||||
|
|
||||||
xinerama = meta_screen_get_xinerama_for_window (window->screen,
|
|
||||||
window);
|
|
||||||
|
|
||||||
meta_window_get_outer_rect (window, &outer);
|
|
||||||
|
|
||||||
if (outer.width >= xinerama->width &&
|
|
||||||
outer.height >= xinerama->height)
|
|
||||||
meta_window_make_fullscreen (window);
|
|
||||||
else
|
|
||||||
{
|
|
||||||
meta_topic (META_DEBUG_GEOMETRY,
|
|
||||||
"Did not fullscreen %s size %dx%d with xinerama %dx%d\n",
|
|
||||||
window->desc,
|
|
||||||
outer.width, outer.height,
|
|
||||||
xinerama->width, xinerama->height);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
meta_topic (META_DEBUG_GEOMETRY,
|
|
||||||
"Did not fullscreen %s has_fullscreen = %d decorated = %d maximized = %d\n",
|
|
||||||
window->desc,
|
|
||||||
window->has_fullscreen_func,
|
|
||||||
window->decorated,
|
|
||||||
window->maximized);
|
|
||||||
}
|
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user