Fix window outline for minimized windows when using alt-esc. #325092.

2006-01-09  Elijah Newren  <newren@gmail.com>

	Fix window outline for minimized windows when using alt-esc.
	#325092.

	* src/display.c (meta_display_begin_grab_op): Specify the showing
	type of tabbing operation (Alt tab vs. alt-esc) in addition to the
	listing type of tabbing operation (docks vs normal windows) to
	meta_screen_ensure_tab_popup().

	* src/display.h (enum MetaTabShowType): new convenience enum

	* src/screen.[ch] (meta_screen_ensure_tab_popup): require the
	showing type be specified in addition to the tabbing type; put the
	outline around the window instead of the icon when in alt-esc
	mode.
This commit is contained in:
Elijah Newren 2006-01-10 05:05:40 +00:00 committed by Elijah Newren
parent ae52d731be
commit 8c5b6c875a
5 changed files with 44 additions and 8 deletions

View File

@ -1,3 +1,20 @@
2006-01-09 Elijah Newren <newren@gmail.com>
Fix window outline for minimized windows when using alt-esc.
#325092.
* src/display.c (meta_display_begin_grab_op): Specify the showing
type of tabbing operation (Alt tab vs. alt-esc) in addition to the
listing type of tabbing operation (docks vs normal windows) to
meta_screen_ensure_tab_popup().
* src/display.h (enum MetaTabShowType): new convenience enum
* src/screen.[ch] (meta_screen_ensure_tab_popup): require the
showing type be specified in addition to the tabbing type; put the
outline around the window instead of the icon when in alt-esc
mode.
2006-01-09 Elijah Newren <newren@gmail.com>
Fix reduced resources resize handling for windows with sizing or

View File

@ -3413,15 +3413,25 @@ meta_display_begin_grab_op (MetaDisplay *display,
switch (op)
{
case META_GRAB_OP_KEYBOARD_TABBING_NORMAL:
meta_screen_ensure_tab_popup (screen,
META_TAB_LIST_NORMAL,
META_TAB_SHOW_ICON);
break;
case META_GRAB_OP_KEYBOARD_ESCAPING_NORMAL:
meta_screen_ensure_tab_popup (screen,
META_TAB_LIST_NORMAL);
META_TAB_LIST_NORMAL,
META_TAB_SHOW_INSTANTLY);
break;
case META_GRAB_OP_KEYBOARD_TABBING_DOCK:
meta_screen_ensure_tab_popup (screen,
META_TAB_LIST_DOCKS,
META_TAB_SHOW_ICON);
break;
case META_GRAB_OP_KEYBOARD_ESCAPING_DOCK:
meta_screen_ensure_tab_popup (screen,
META_TAB_LIST_DOCKS);
META_TAB_LIST_DOCKS,
META_TAB_SHOW_INSTANTLY);
break;
case META_GRAB_OP_KEYBOARD_WORKSPACE_SWITCHING:

View File

@ -488,6 +488,12 @@ typedef enum
META_TAB_LIST_DOCKS
} MetaTabList;
typedef enum
{
META_TAB_SHOW_ICON, /* Alt-Tab mode */
META_TAB_SHOW_INSTANTLY /* Alt-Esc mode */
} MetaTabShowType;
GList* meta_display_get_tab_list (MetaDisplay *display,
MetaTabList type,
MetaScreen *screen,

View File

@ -1162,8 +1162,9 @@ meta_screen_update_cursor (MetaScreen *screen)
}
void
meta_screen_ensure_tab_popup (MetaScreen *screen,
MetaTabList type)
meta_screen_ensure_tab_popup (MetaScreen *screen,
MetaTabList list_type,
MetaTabShowType show_type)
{
MetaTabEntry *entries;
GList *tab_list;
@ -1175,7 +1176,7 @@ meta_screen_ensure_tab_popup (MetaScreen *screen,
return;
tab_list = meta_display_get_tab_list (screen->display,
type,
list_type,
screen,
screen->active_workspace);
@ -1202,7 +1203,9 @@ meta_screen_ensure_tab_popup (MetaScreen *screen,
entries[i].hidden = !meta_window_showing_on_its_workspace (window);
entries[i].demands_attention = window->wm_state_demands_attention;
if (!window->minimized || !meta_window_get_icon_geometry (window, &r))
if (show_type == META_TAB_SHOW_INSTANTLY ||
!window->minimized ||
!meta_window_get_icon_geometry (window, &r))
meta_window_get_outer_rect (window, &r);
entries[i].rect = r;

View File

@ -146,8 +146,8 @@ void meta_screen_set_cursor (MetaScreen *scree
void meta_screen_update_cursor (MetaScreen *screen);
void meta_screen_ensure_tab_popup (MetaScreen *screen,
MetaTabList type);
MetaTabList list_type,
MetaTabShowType show_type);
void meta_screen_ensure_workspace_popup (MetaScreen *screen);
MetaWindow* meta_screen_get_mouse_window (MetaScreen *screen,