be sure window is mapped if we unmanage it and it's not withdrawn; bug

2002-08-10  Havoc Pennington  <hp@pobox.com>

	* src/window.c (meta_window_free): be sure window is
	mapped if we unmanage it and it's not withdrawn;
	bug #90369

	* src/screen.c (meta_screen_new): change string
	s/override/replace/ bug #89077

	* src/theme.c (scale_and_alpha_pixbuf): dump the
	sometimes-use-NEAREST-instead-of-BILINEAR optimization,
	bug #87489
This commit is contained in:
Havoc Pennington 2002-08-10 17:32:29 +00:00 committed by Havoc Pennington
parent 154e38e71e
commit c540438b91
4 changed files with 29 additions and 18 deletions

View File

@ -1,3 +1,16 @@
2002-08-10 Havoc Pennington <hp@pobox.com>
* src/window.c (meta_window_free): be sure window is
mapped if we unmanage it and it's not withdrawn;
bug #90369
* src/screen.c (meta_screen_new): change string
s/override/replace/ bug #89077
* src/theme.c (scale_and_alpha_pixbuf): dump the
sometimes-use-NEAREST-instead-of-BILINEAR optimization,
bug #87489
2002-08-10 Havoc Pennington <hp@pobox.com> 2002-08-10 Havoc Pennington <hp@pobox.com>
* src/window.c (menu_callback): raise window when moving to * src/window.c (menu_callback): raise window when moving to

View File

@ -218,7 +218,7 @@ meta_screen_new (MetaDisplay *display,
if (!replace_current_wm) if (!replace_current_wm)
{ {
meta_warning (_("Screen %d on display \"%s\" already has a window manager; try using the --replace option to override the current window manager.\n"), meta_warning (_("Screen %d on display \"%s\" already has a window manager; try using the --replace option to replace the current window manager.\n"),
number, display->name); number, display->name);
return NULL; return NULL;

View File

@ -2633,19 +2633,9 @@ scale_and_alpha_pixbuf (GdkPixbuf *src,
switch (fill_type) switch (fill_type)
{ {
case META_IMAGE_FILL_SCALE: case META_IMAGE_FILL_SCALE:
if (gdk_pixbuf_get_width (pixbuf) == width || pixbuf = gdk_pixbuf_scale_simple (pixbuf,
gdk_pixbuf_get_height (pixbuf) == height) width, height,
{ GDK_INTERP_BILINEAR);
pixbuf = gdk_pixbuf_scale_simple (pixbuf,
width, height,
GDK_INTERP_NEAREST);
}
else
{
pixbuf = gdk_pixbuf_scale_simple (pixbuf,
width, height,
GDK_INTERP_BILINEAR);
}
break; break;
case META_IMAGE_FILL_TILE: case META_IMAGE_FILL_TILE:
pixbuf = pixbuf_tile (pixbuf, width, height); pixbuf = pixbuf_tile (pixbuf, width, height);

View File

@ -870,6 +870,9 @@ meta_window_free (MetaWindow *window)
/* FIXME restore original size if window has maximized */ /* FIXME restore original size if window has maximized */
if (window->frame)
meta_window_destroy_frame (window);
if (window->withdrawn) if (window->withdrawn)
{ {
/* We need to clean off the window's state so it /* We need to clean off the window's state so it
@ -897,10 +900,15 @@ meta_window_free (MetaWindow *window)
set_wm_state (window, NormalState); set_wm_state (window, NormalState);
meta_error_trap_pop (window->display); meta_error_trap_pop (window->display);
} }
}
if (window->frame) /* And we need to be sure the window is mapped so other WMs
meta_window_destroy_frame (window); * know that it isn't Withdrawn
*/
meta_error_trap_push (window->display);
XMapWindow (window->display->xdisplay,
window->xwindow);
meta_error_trap_pop (window->display);
}
meta_window_ungrab_keys (window); meta_window_ungrab_keys (window);
meta_display_ungrab_window_buttons (window->display, window->xwindow); meta_display_ungrab_window_buttons (window->display, window->xwindow);