[Webkit-unassigned] [Bug 18831] [GTK] support windowless plugins

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Nov 2 16:52:37 PST 2009


https://bugs.webkit.org/show_bug.cgi?id=18831


Brian Tarricone <bjt23 at cornell.edu> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #42247|0                           |1
        is obsolete|                            |




--- Comment #14 from Brian Tarricone <bjt23 at cornell.edu>  2009-11-02 16:52:35 PDT ---
Created an attachment (id=42350)
 --> (https://bugs.webkit.org/attachment.cgi?id=42350)
Take 3, mostly working

Ok, here's v3.  Changes from v2:

* Replace preprocessor checks for (XP_UNIX || Q_WS_X11) with just XP_UNIX, and
ifdef out a few more sections that should be XP_UNIX only.
* Copy from gdk's backing store to fix transparent windowless mode for plugins
that use a visual that doesn't include an alpha channel.
* Use the qt backend's method of figuring out the colormap/visual to use for
the plugin's backing pixmap.

I left the XSync() stuff in for now, though as it stands it'll never get called
during paint (since m_pluginDisplay == GDK_DISPLAY() always).  It might be
useful later, or possibly it could get put into common code with the qt port. 
In that vein, there are probably some things that could be made more generic
and be shared with the qt port (like the visual/cmap selection code).

I ran the windowless plugin test page included in the webkit source, and it
sorta works.  At least, it works just as well as the qt backend does: move is
broken (old plugin location doesn't get invalidated, new location doesn't get
repainted unless the plugin's contents change), animate is broken (plugin area
picks up some text from outside the plugin area, other drawing issues).  But
these problems are common to both the qt backend and my new gtk backend code. 
I'm not yet sure if they're issues with the plugin backends, or need to be
fixed in common code -- maybe both.

Anyhow, it's working decently well now.  I think I might be able to at least
work on fixing the animation stuff, but I'm not sure how much more time I'll
have to dedicate to fixing other issues.

-- 
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