[Webkit-unassigned] [Bug 16885] Official API for raw/GL embedders

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Jan 15 15:45:34 PST 2008


http://bugs.webkit.org/show_bug.cgi?id=16885





------- Comment #4 from tofu.linden at lindenlab.com  2008-01-15 15:45 PDT -------
Created an attachment (id=18463)
 --> (http://bugs.webkit.org/attachment.cgi?id=18463&action=view)
The interface I'd like to be able to implement on top of WebKit's API.

Here's llmediabase.h.  It describes our app-level abstraction on top of
(primarily) Gecko, QuickTime, and WebKit.  I don't, of course, hope WebKit to
implement this interface or a particularly close analogue - I hope merely that
WebKit's official API exports enough functionality to implement this interface
with a reasonably straightforward layer of code.

The header file is briefly commented, but here are the most interesting bits:

* Graphic scraping:
        // returns pointer to raw media pixels
        virtual unsigned char* getMediaData() = 0;
(also setRequestedMediaSize(), getMediaWidth(), getMediaHeight(),
getTextureFormatInteral() etc.)

* Synthetic user input:
        // mouse and keyboard interaction
        virtual bool mouseDown( int x_pos, int y_pos ) = 0;
        virtual bool mouseUp( int x_pos, int y_pos ) = 0;
        virtual bool mouseMove( int x_pos, int y_pos ) = 0;
        virtual bool keyPress( int key_code ) = 0;
        virtual bool scrollByLines( int lines ) = 0;
        virtual bool focus( bool focus ) = 0;
        virtual bool unicodeInput( unsigned long uni_char ) = 0;

* Web:
        // niceties: set/clear URL to visit when a 404 page is reached
        virtual bool set404RedirectUrl( std::string redirect_url ) = 0;
        virtual bool clr404RedirectUrl() = 0;
        // navigation
        virtual bool navigateTo( const std::string url ) = 0;
        virtual bool navigateForward() = 0;
        virtual bool navigateBack() = 0;
        virtual bool canNavigateForward() = 0;
        virtual bool canNavigateBack() = 0;
        // caching/cookies
        virtual bool enableCookies( bool enable ) = 0;
        virtual bool clearCache() = 0;
        virtual bool clearCookies() = 0;
        // proxy
        virtual bool enableProxy(bool enable, std::string proxy_host_name, int
proxy_port) = 0;


-- 
Configure bugmail: http://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list