Fix tracking of single-process multi app cases

When starting oocalc or ooimpress from oowriter's menu get_app_for_window,
fails to recognize the newly started up as such, which result into the appMenu
still showing "Openoffice.org Writer" as app name.

Fix this by trying to window itself first before using the group for finding the app.

https://bugzilla.gnome.org/show_bug.cgi?id=611288
This commit is contained in:
Adel Gadllah 2010-02-28 21:51:34 +01:00
parent 2e98aab2e7
commit 40a8e9c1a6

View File

@ -345,6 +345,19 @@ get_app_for_window (ShellWindowTracker *monitor,
MetaGroup *group; MetaGroup *group;
GSList *iter; GSList *iter;
result = NULL;
if (meta_window_get_window_type (window) == META_WINDOW_NORMAL)
{
result = g_hash_table_lookup (monitor->window_to_app, window);
if (result != NULL)
{
g_object_ref (result);
return result;
}
else
return get_app_for_window_direct (window);
}
group = meta_window_get_group (window); group = meta_window_get_group (window);
if (group == NULL) if (group == NULL)
group_windows = g_slist_prepend (NULL, window); group_windows = g_slist_prepend (NULL, window);