diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2013-02-09 03:21:42 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2013-02-09 03:21:42 +0800 |
commit | 60d1c3054aa60d02c763538d6b1f16d9d6ab6ade (patch) | |
tree | 755a59156908bd215c03f20f59b0ef770564c805 /shell | |
parent | 9c6a7673b80268d96eb007b3273b26d5422f48a1 (diff) | |
download | gsoc2013-evolution-60d1c3054aa60d02c763538d6b1f16d9d6ab6ade.tar gsoc2013-evolution-60d1c3054aa60d02c763538d6b1f16d9d6ab6ade.tar.gz gsoc2013-evolution-60d1c3054aa60d02c763538d6b1f16d9d6ab6ade.tar.bz2 gsoc2013-evolution-60d1c3054aa60d02c763538d6b1f16d9d6ab6ade.tar.lz gsoc2013-evolution-60d1c3054aa60d02c763538d6b1f16d9d6ab6ade.tar.xz gsoc2013-evolution-60d1c3054aa60d02c763538d6b1f16d9d6ab6ade.tar.zst gsoc2013-evolution-60d1c3054aa60d02c763538d6b1f16d9d6ab6ade.zip |
G_PRIORITY_HIGH_IDLE is sufficient to beat GTK+ redraws.
GTK+ uses (G_PRIORITY_HIGH_IDLE + 20) for redrawing operations, which is
actually a slightly lower priority than G_PRIORITY_HIGH_IDLE. Therefore
for our purpose, G_PRIORITY_HIGH_IDLE is sufficient.
Diffstat (limited to 'shell')
-rw-r--r-- | shell/e-shell-searchbar.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/shell/e-shell-searchbar.c b/shell/e-shell-searchbar.c index 107a30a692..262b082d6c 100644 --- a/shell/e-shell-searchbar.c +++ b/shell/e-shell-searchbar.c @@ -1733,10 +1733,14 @@ e_shell_searchbar_load_state (EShellSearchbar *searchbar) gtk_action_unblock_activate (action); /* Execute the search when we have time. */ + g_object_ref (shell_view); searchbar->priv->state_dirty = FALSE; - /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */ - g_idle_add_full (G_PRIORITY_DEFAULT, idle_execute_search, shell_view, NULL); + + /* Prioritize ahead of GTK+ redraws. */ + g_idle_add_full ( + G_PRIORITY_HIGH_IDLE, + idle_execute_search, shell_view, NULL); } void |