[Webkit-unassigned] [Bug 39474] [GStreamer] GTK XOverlay support in GStreamerGWorld
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Jul 16 07:54:03 PDT 2010
https://bugs.webkit.org/show_bug.cgi?id=39474
--- Comment #24 from Gustavo Noronha (kov) <gns at gnome.org> 2010-07-16 07:54:03 PST ---
(From update of attachment 61777)
79 #if PLATFORM(GTK)
80 m_fullscreenWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
81 gtk_widget_set_events(m_fullscreenWindow, GDK_POINTER_MOTION_MASK | GDK_KEY_PRESS_MASK | GDK_FOCUS_CHANGE_MASK);
82
83 m_videoWindow = gtk_drawing_area_new();
84 gtk_widget_set_double_buffered(m_videoWindow, FALSE);
85 gtk_container_add(GTK_CONTAINER(m_fullscreenWindow), m_videoWindow);
86
87 gtk_widget_show_all(m_fullscreenWindow);
88 gtk_widget_realize(m_fullscreenWindow);
89 gtk_widget_hide_all(m_fullscreenWindow);
This sequence looks very weird to me. What exactly do you intend to do here? Do you need both m_fullscreenWindow, and m_videoWindow realized? Why not just call realize on both? But, what comes later is a bit more weird:
90
91 #ifdef GDK_WINDOWING_X11
92 gdk_threads_enter();
93 gdk_display_sync(gdk_display_get_default());
94 m_videoWindowId = GDK_WINDOW_XID(gtk_widget_get_window(m_fullscreenWindow));
95 gdk_threads_leave();
96 #endif
97 #endif
98 }
If you think gdk_threads_enter() is required here, it should also be used above in the gtk calls, why are you not using it there? For the future, to avoid having a lot of #ifdefing, we may want to replace these with calls to, say, platformEnterFullScreen, that would be implemented in a platform/graphics/GStreamerGWorldGtk.cpp, or maybe platform/graphics/gstreamer/gtk/GStreamerGWorldGtk.cpp, similar to how, say, platform-specific parts of ResourceRequest are_factory_make("queue", "queue"); Sorry for not spotting these in earlier patches =(. I'm still looking at the patch, let me checkpoint here, though.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list