[hafqa] [hafqa] [Bug 3501] hildon_window_update_topmost() should handle/ignore windows that haven't been realized
From: bugzilla-daemon at maemo.org bugzilla-daemon at maemo.orgDate: Tue Aug 5 17:17:08 EEST 2008
- Previous message: [hafqa] [Bug 3522] Dialog coordinates calculation issue while switching from Fullscreen to Unfullscreen mode
- Next message: [hafqa] [Bug 3522] Dialog coordinates calculation issue while switching from Fullscreen to Unfullscreen mode
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
https://bugs.maemo.org/show_bug.cgi?id=3501 eero.tamminen at nokia.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |eero.tamminen at nokia.com Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords| |easyfix Summary|hildon_window_update_topmost|hildon_window_update_topmost |() does not check for |() should handle/ignore |invisible windows |windows that haven't been | |realized ------- Comment #3 from eero.tamminen at nokia.com 2008-08-05 17:17 GMT+3 ------- (In reply to comment #0) > I've replaced gtk_window_new() calls with hildon_window_new() calls, and added > hildon_program_add_window() calls right after creating the window. However, > when I run the application, I always get the following warning during startup: > > GLIB WARNING ** Gdk - gdkdrawable-x11.c:878 drawable is not a pixmap or window > > I've debugged the problem down to hildon-window.c, function > hildon_window_update_topmost. It contains a line: > > my_window = GDK_WINDOW_XID (GTK_WIDGET(self)->window); I looked into code and this seems a clear bug. I've seen this warning also in logs from our apps, maybe the cause is the same. > Problem is, when it's called for the window that wasn't yet mapped > (hildon_window_realize() was not called), the 'window' field in > GtkWidget is zero, this GDK_WINDOW_XID call will emit a warning. > > I think hildon_window_update_topmost() should ignore invisible widgets at all. A check for "GTK_WIDGET_REALIZED(self)" or "self->window" in line 1466 libhildon::hildon-window.c should be enough: -------------------------------------------- 1456 void 1457 hildon_window_update_topmost (HildonWindow *self, 1458 Window window_id) 1459 { 1460 HildonWindowPrivate *priv = HILDON_WINDOW_GET_PRIVATE (self); 1461 1462 Window my_window; 1463 1464 g_return_if_fail (HILDON_IS_WINDOW (self)); 1465 g_assert (priv); 1466 1467 my_window = GDK_WINDOW_XID (GTK_WIDGET (self)->window); -------------------------------------------- Thanks! -- Configure bugmail: https://bugs.maemo.org/userprefs.cgi?tab=email Replies to this email are NOT read, instead please add comments at https://bugs.maemo.org/show_bug.cgi?id=3501 ------- You are receiving this mail because: ------- You are the QA contact for the bug, or are watching the QA contact.
- Previous message: [hafqa] [Bug 3522] Dialog coordinates calculation issue while switching from Fullscreen to Unfullscreen mode
- Next message: [hafqa] [Bug 3522] Dialog coordinates calculation issue while switching from Fullscreen to Unfullscreen mode
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]