put all transients of the new window, if any exist, in the calc_showing

2005-05-26  Elijah Newren  <newren@gmail.com>

	* src/window.c: (meta_window_new_with_attrs): put all transients
	of the new window, if any exist, in the calc_showing queue.  Fixes
	#303284.
This commit is contained in:
Elijah Newren 2005-05-26 17:15:56 +00:00 committed by Elijah Newren
parent b71671f94f
commit eb46b01e97
2 changed files with 15 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2005-05-26 Elijah Newren <newren@gmail.com>
* src/window.c: (meta_window_new_with_attrs): put all transients
of the new window, if any exist, in the calc_showing queue. Fixes
#303284.
2005-04-11 Elijah Newren <newren@gmail.com> 2005-04-11 Elijah Newren <newren@gmail.com>
* configure.in: post-release version bump to 2.10.2 * configure.in: post-release version bump to 2.10.2

View File

@ -106,6 +106,9 @@ static void meta_window_update_icon_now (MetaWindow *window);
void meta_window_unqueue_update_icon (MetaWindow *window); void meta_window_unqueue_update_icon (MetaWindow *window);
void meta_window_flush_update_icon (MetaWindow *window); void meta_window_flush_update_icon (MetaWindow *window);
static gboolean queue_calc_showing_func (MetaWindow *window,
void *data);
static void meta_window_apply_session_info (MetaWindow *window, static void meta_window_apply_session_info (MetaWindow *window,
const MetaWindowSessionInfo *info); const MetaWindowSessionInfo *info);
@ -720,6 +723,12 @@ meta_window_new_with_attrs (MetaDisplay *display,
maybe_leave_show_desktop_mode (window); maybe_leave_show_desktop_mode (window);
meta_window_queue_calc_showing (window); meta_window_queue_calc_showing (window);
/* See bug 303284; a transient of the given window can already exist, in which
* case we think it should probably be shown.
*/
meta_window_foreach_transient (window,
queue_calc_showing_func,
NULL);
meta_error_trap_pop (display, FALSE); /* pop the XSync()-reducing trap */ meta_error_trap_pop (display, FALSE); /* pop the XSync()-reducing trap */
meta_display_ungrab (display); meta_display_ungrab (display);