Changeset 84206 in webkit


Ignore:
Timestamp:
Apr 18, 2011 4:28:38 PM (13 years ago)
Author:
jer.noble@apple.com
Message:

2011-04-05 Jer Noble <jer.noble@apple.com>

Reviewed by Sam Weinig.

WebKit2: WKTR should support WebKit2 full screen APIs
https://bugs.webkit.org/show_bug.cgi?id=56318

WKTR does not support the eventSender.keyDown() method, so use mouseDown()
in those cases that keyDown() does not exist.

  • fullscreen/full-screen-test.js: (runWithKeyDown.document.addEventListener): (runWithKeyDown):

2011-04-05 Jer Noble <jer.noble@apple.com>

Reviewed by Sam Weinig.

WebKit2: WKTR should support WebKit2 full screen APIs
https://bugs.webkit.org/show_bug.cgi?id=56318

Add a new WKBundlePage API for Full Screen events, and move some of the implementation
of WebFullScreenManager into the new InjectedBundlePageFullScreenClient class, so that
the default behavior can be overridden by a WKBundlePageFullScreenClient.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/FullScreen/WebFullScreenManager.cpp: (WebKit::WebFullScreenManager::supportsFullScreen): Moved contents into InjectedBundlePageFullScreenClient. (WebKit::WebFullScreenManager::enterFullScreenForElement): Ditto. (WebKit::WebFullScreenManager::exitFullScreenForElement): Ditto.
  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: (WKBundlePageSetFullScreenClient): Added. (WKBundlePageWillEnterFullScreenForElement): Added. (WKBundlePageDidEnterFullScreenForElement): Added. (WKBundlePageWillExitFullScreenForElement): Added. (WKBundlePageDidExitFullScreenForElement): Added.
  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.cpp: Added. (WebKit::InjectedBundlePageFullScreenClient::supportsFullScreen): Added. (WebKit::InjectedBundlePageFullScreenClient::enterFullScreenForElement): Added. (WebKit::InjectedBundlePageFullScreenClient::exitFullScreenForElement): Added.
  • WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.h: Added.
  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::initializeInjectedBundleFullScreenClient): Added.
  • WebProcess/WebPage/WebPage.h: (WebKit::WebPage::injectedBundleFullScreenClient): Added.

2011-04-05 Jer Noble <jer.noble@apple.com>

Reviewed by Sam Weinig.

WebKit2: WKTR should support WebKit2 full screen APIs
https://bugs.webkit.org/show_bug.cgi?id=56318

Respond to enterFullScreenForElement() and exitFullScreenForElement(), allowing
WKTR to test the LayoutTest/fullscreen/ tests.

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp: (WTR::InjectedBundlePage::InjectedBundlePage): Add support for WKBundlePageFullScreenClient. (WTR::InjectedBundlePage::supportsFullScreen): Added. (WTR::InjectedBundlePage::enterFullScreenForElement): Added. (WTR::InjectedBundlePage::exitFullScreenForElement): Added.
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
  • WebKitTestRunner/TestController.cpp: (WTR::TestController::resetStateToConsistentValues): Enable the full screen preference.
Location:
trunk
Files:
2 added
14 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r84199 r84206  
     12011-04-05  Jer Noble  <jer.noble@apple.com>
     2
     3        Reviewed by Sam Weinig.
     4
     5        WebKit2: WKTR should support WebKit2 full screen APIs
     6        https://bugs.webkit.org/show_bug.cgi?id=56318
     7
     8        WKTR does not support the eventSender.keyDown() method, so use mouseDown()
     9        in those cases that keyDown() does not exist.
     10
     11        * fullscreen/full-screen-test.js:
     12        (runWithKeyDown.document.addEventListener):
     13        (runWithKeyDown):
     14
    1152011-04-18  Evan Martin  <evan@chromium.org>
    216
  • trunk/LayoutTests/fullscreen/full-screen-test.js

    r83654 r84206  
    1212function runWithKeyDown(fn)
    1313{
    14     document.addEventListener('keypress', function() { fn(); }, false);
     14    // FIXME: WKTR does not yet support the keyDown() message.  Do a mouseDown here
     15    // instead until keyDown support is added.
     16    document.addEventListener(eventSender.keyDown ? 'keypress' : 'mousedown', function() { fn(); }, false);
    1517    if (window.layoutTestController) {
    16         eventSender.keyDown(" ", []);
     18        if (eventSender.keyDown)
     19            eventSender.keyDown(" ", []);
     20        else
     21            eventSender.mouseDown();
    1722    }
    1823}
  • trunk/Source/WebKit2/ChangeLog

    r84202 r84206  
     12011-04-05  Jer Noble  <jer.noble@apple.com>
     2
     3        Reviewed by Sam Weinig.
     4
     5        WebKit2: WKTR should support WebKit2 full screen APIs
     6        https://bugs.webkit.org/show_bug.cgi?id=56318
     7
     8        Add a new WKBundlePage API for Full Screen events, and move some of the implementation
     9        of WebFullScreenManager into the new InjectedBundlePageFullScreenClient class, so that
     10        the default behavior can be overridden by a WKBundlePageFullScreenClient.
     11
     12        * WebKit2.xcodeproj/project.pbxproj:
     13        * WebProcess/FullScreen/WebFullScreenManager.cpp:
     14        (WebKit::WebFullScreenManager::supportsFullScreen): Moved contents into InjectedBundlePageFullScreenClient.
     15        (WebKit::WebFullScreenManager::enterFullScreenForElement): Ditto.
     16        (WebKit::WebFullScreenManager::exitFullScreenForElement): Ditto.
     17        * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
     18        (WKBundlePageSetFullScreenClient): Added.
     19        (WKBundlePageWillEnterFullScreenForElement): Added.
     20        (WKBundlePageDidEnterFullScreenForElement): Added.
     21        (WKBundlePageWillExitFullScreenForElement): Added.
     22        (WKBundlePageDidExitFullScreenForElement): Added.
     23        * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
     24        * WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.cpp: Added.
     25        (WebKit::InjectedBundlePageFullScreenClient::supportsFullScreen): Added.
     26        (WebKit::InjectedBundlePageFullScreenClient::enterFullScreenForElement): Added.
     27        (WebKit::InjectedBundlePageFullScreenClient::exitFullScreenForElement): Added.
     28        * WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.h: Added.
     29        * WebProcess/WebPage/WebPage.cpp:
     30        (WebKit::WebPage::initializeInjectedBundleFullScreenClient): Added.
     31        * WebProcess/WebPage/WebPage.h:
     32        (WebKit::WebPage::injectedBundleFullScreenClient): Added.
     33
    1342011-04-18  Alexey Proskuryakov  <ap@apple.com>
    235
  • trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj

    r84181 r84206  
    771771                C574A58112E66681002DFE98 /* PasteboardTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = C574A57F12E66681002DFE98 /* PasteboardTypes.h */; };
    772772                C574A58212E66681002DFE98 /* PasteboardTypes.mm in Sources */ = {isa = PBXBuildFile; fileRef = C574A58012E66681002DFE98 /* PasteboardTypes.mm */; };
     773                CD5C66A0134B9D38004FE2A8 /* InjectedBundlePageFullScreenClient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD5C669E134B9D36004FE2A8 /* InjectedBundlePageFullScreenClient.cpp */; };
     774                CD5C66A1134B9D38004FE2A8 /* InjectedBundlePageFullScreenClient.h in Headers */ = {isa = PBXBuildFile; fileRef = CD5C669F134B9D37004FE2A8 /* InjectedBundlePageFullScreenClient.h */; };
    773775                CD6F75F4131B66D000D6B21E /* WebFullScreenManagerProxy.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD73BA3E131A2E8A00EEDED2 /* WebFullScreenManagerProxy.cpp */; };
    774776                CD73BA47131ACC9A00EEDED2 /* WebFullScreenManagerProxyMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD73BA45131ACC8800EEDED2 /* WebFullScreenManagerProxyMessageReceiver.cpp */; };
     
    16891691                C574A57F12E66681002DFE98 /* PasteboardTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PasteboardTypes.h; sourceTree = "<group>"; };
    16901692                C574A58012E66681002DFE98 /* PasteboardTypes.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PasteboardTypes.mm; sourceTree = "<group>"; };
     1693                CD5C669E134B9D36004FE2A8 /* InjectedBundlePageFullScreenClient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundlePageFullScreenClient.cpp; sourceTree = "<group>"; };
     1694                CD5C669F134B9D37004FE2A8 /* InjectedBundlePageFullScreenClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InjectedBundlePageFullScreenClient.h; sourceTree = "<group>"; };
    16911695                CD73BA37131A29FE00EEDED2 /* WebFullScreenManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = WebFullScreenManager.cpp; path = FullScreen/WebFullScreenManager.cpp; sourceTree = "<group>"; };
    16921696                CD73BA38131A29FE00EEDED2 /* WebFullScreenManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebFullScreenManager.h; path = FullScreen/WebFullScreenManager.h; sourceTree = "<group>"; };
     
    28552859                                BC14DF75120B5B7900826C0C /* InjectedBundleScriptWorld.h */,
    28562860                                BCB0B0DD12305A8C00B1341E /* InjectedBundleUserMessageCoders.h */,
     2861                                CD5C669E134B9D36004FE2A8 /* InjectedBundlePageFullScreenClient.cpp */,
     2862                                CD5C669F134B9D37004FE2A8 /* InjectedBundlePageFullScreenClient.h */,
    28572863                        );
    28582864                        path = InjectedBundle;
     
    36823688                                E1A31732134CEA6C007C9A4F /* AttributedString.h in Headers */,
    36833689                                E179FD9C134D38060015B883 /* ArgumentCodersMac.h in Headers */,
     3690                                CD5C66A1134B9D38004FE2A8 /* InjectedBundlePageFullScreenClient.h in Headers */,
    36843691                        );
    36853692                        runOnlyForDeploymentPostprocessing = 0;
     
    43104317                                E179FD9F134D38250015B883 /* ArgumentCodersMac.mm in Sources */,
    43114318                                31EA25D2134F78C0005B1452 /* NativeWebMouseEventMac.mm in Sources */,
     4319                                CD5C66A0134B9D38004FE2A8 /* InjectedBundlePageFullScreenClient.cpp in Sources */,
    43124320                        );
    43134321                        runOnlyForDeploymentPostprocessing = 0;
  • trunk/Source/WebKit2/WebProcess/FullScreen/WebFullScreenManager.cpp

    r82084 r84206  
    6767        return false;
    6868
    69     bool supports = true;
    70     m_page->sendSync(Messages::WebFullScreenManagerProxy::SupportsFullScreen(withKeyboard), supports);
    71     return supports;
     69    return m_page->injectedBundleFullScreenClient().supportsFullScreen(m_page.get(), withKeyboard);
     70
    7271}
    7372
     
    7776    m_element = element;
    7877    m_initialFrame = m_element->screenRect();
    79     m_page->send(Messages::WebFullScreenManagerProxy::EnterFullScreen());
     78    m_page->injectedBundleFullScreenClient().enterFullScreenForElement(m_page.get(), element);
    8079}
    8180
     
    8483    ASSERT(element);
    8584    ASSERT(m_element == element);
    86     m_page->send(Messages::WebFullScreenManagerProxy::ExitFullScreen());
     85    m_page->injectedBundleFullScreenClient().exitFullScreenForElement(m_page.get(), element);
    8786}
    8887
  • trunk/Source/WebKit2/WebProcess/FullScreen/WebFullScreenManager.h

    r82084 r84206  
    6464    virtual void setRootFullScreenLayer(WebCore::GraphicsLayer*) = 0;
    6565
     66    void willEnterFullScreen();
     67    void didEnterFullScreen();
     68    void willExitFullScreen();
     69    void didExitFullScreen();
     70
    6671    WebCore::Element* element();
    6772
     
    6974    WebFullScreenManager(WebPage*);
    7075
    71     void willEnterFullScreen();
    72     void didEnterFullScreen();
    73     void willExitFullScreen();
    74     void didExitFullScreen();
    7576    virtual void beginEnterFullScreenAnimation(float duration) = 0;
    7677    virtual void beginExitFullScreenAnimation(float duration) = 0;
  • trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp

    r84034 r84206  
    2929
    3030#include "InjectedBundleBackForwardList.h"
     31#include "InjectedBundleNodeHandle.h"
    3132#include "WKAPICast.h"
    3233#include "WKBundleAPICast.h"
     34#include "WebFullScreenManager.h"
    3335#include "WebImage.h"
    3436#include "WebPage.h"
     
    9496}
    9597
     98void WKBundlePageSetFullScreenClient(WKBundlePageRef pageRef, WKBundlePageFullScreenClient* wkClient)
     99{
     100#if defined(ENABLE_FULLSCREEN_API) && ENABLE_FULLSCREEN_API
     101    if (wkClient && wkClient->version)
     102        return;
     103    toImpl(pageRef)->initializeInjectedBundleFullScreenClient(wkClient);
     104#endif
     105}
     106
     107void WKBundlePageWillEnterFullScreen(WKBundlePageRef pageRef)
     108{
     109#if defined(ENABLE_FULLSCREEN_API) && ENABLE_FULLSCREEN_API
     110    toImpl(pageRef)->fullScreenManager()->willEnterFullScreen();
     111#endif
     112}
     113
     114void WKBundlePageDidEnterFullScreen(WKBundlePageRef pageRef)
     115{
     116#if defined(ENABLE_FULLSCREEN_API) && ENABLE_FULLSCREEN_API
     117    toImpl(pageRef)->fullScreenManager()->didEnterFullScreen();
     118#endif
     119}
     120
     121void WKBundlePageWillExitFullScreen(WKBundlePageRef pageRef)
     122{
     123#if defined(ENABLE_FULLSCREEN_API) && ENABLE_FULLSCREEN_API
     124    toImpl(pageRef)->fullScreenManager()->willExitFullScreen();
     125#endif
     126}
     127
     128void WKBundlePageDidExitFullScreen(WKBundlePageRef pageRef)
     129{
     130#if defined(ENABLE_FULLSCREEN_API) && ENABLE_FULLSCREEN_API
     131    toImpl(pageRef)->fullScreenManager()->didExitFullScreen();
     132#endif
     133}
     134
    96135WKBundlePageGroupRef WKBundlePageGetPageGroup(WKBundlePageRef pageRef)
    97136{
  • trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.h

    r82289 r84206  
    6767typedef uint32_t WKInputFieldActionType;
    6868
     69enum {
     70    WKFullScreenNoKeyboard,
     71    WKFullScreenKeyboard,
     72};
     73typedef uint32_t WKFullScreenKeyboardRequestType;
     74
    6975// Loader Client
    7076typedef void (*WKBundlePageDidStartProvisionalLoadForFrameCallback)(WKBundlePageRef page, WKBundleFrameRef frame, WKTypeRef* userData, const void *clientInfo);
     
    244250typedef struct WKBundlePageContextMenuClient WKBundlePageContextMenuClient;
    245251
     252// Full Screen client
     253typedef bool (*WKBundlePageSupportsFullScreen)(WKBundlePageRef page, WKFullScreenKeyboardRequestType requestType);
     254typedef void (*WKBundlePageEnterFullScreenForElement)(WKBundlePageRef page, WKBundleNodeHandleRef element);
     255typedef void (*WKBundlePageExitFullScreenForElement)(WKBundlePageRef page, WKBundleNodeHandleRef element);
     256
     257struct WKBundlePageFullScreenClient {
     258    int                                                                 version;
     259    const void *                                                        clientInfo;
     260    WKBundlePageSupportsFullScreen                                      supportsFullScreen;
     261    WKBundlePageEnterFullScreenForElement                               enterFullScreenForElement;
     262    WKBundlePageExitFullScreenForElement                                exitFullScreenForElement;
     263};
     264typedef struct WKBundlePageFullScreenClient WKBundlePageFullScreenClient;
     265
     266WK_EXPORT void WKBundlePageWillEnterFullScreen(WKBundlePageRef page);
     267WK_EXPORT void WKBundlePageDidEnterFullScreen(WKBundlePageRef page);
     268WK_EXPORT void WKBundlePageWillExitFullScreen(WKBundlePageRef page);
     269WK_EXPORT void WKBundlePageDidExitFullScreen(WKBundlePageRef page);
     270
    246271WK_EXPORT WKTypeID WKBundlePageGetTypeID();
    247  
     272
    248273WK_EXPORT void WKBundlePageSetContextMenuClient(WKBundlePageRef page, WKBundlePageContextMenuClient* client);
    249274WK_EXPORT void WKBundlePageSetEditorClient(WKBundlePageRef page, WKBundlePageEditorClient* client);
     
    253278WK_EXPORT void WKBundlePageSetPolicyClient(WKBundlePageRef page, WKBundlePagePolicyClient* client);
    254279WK_EXPORT void WKBundlePageSetUIClient(WKBundlePageRef page, WKBundlePageUIClient* client);
     280   
     281WK_EXPORT void WKBundlePageSetFullScreenClient(WKBundlePageRef page, WKBundlePageFullScreenClient* client);
    255282
    256283WK_EXPORT WKBundlePageGroupRef WKBundlePageGetPageGroup(WKBundlePageRef page);
  • trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp

    r84181 r84206  
    295295}
    296296
     297#if ENABLE(FULLSCREEN_API)
     298void WebPage::initializeInjectedBundleFullScreenClient(WKBundlePageFullScreenClient* client)
     299{
     300    m_fullScreenClient.initialize(client);
     301}
     302#endif
     303
    297304PassRefPtr<Plugin> WebPage::createPlugin(const Plugin::Parameters& parameters)
    298305{
  • trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h

    r84034 r84206  
    3535#include "InjectedBundlePageEditorClient.h"
    3636#include "InjectedBundlePageFormClient.h"
     37#include "InjectedBundlePageFullScreenClient.h"
    3738#include "InjectedBundlePageLoaderClient.h"
    3839#include "InjectedBundlePagePolicyClient.h"
     
    196197    void initializeInjectedBundleResourceLoadClient(WKBundlePageResourceLoadClient*);
    197198    void initializeInjectedBundleUIClient(WKBundlePageUIClient*);
     199#if ENABLE(FULLSCREEN_API)
     200    void initializeInjectedBundleFullScreenClient(WKBundlePageFullScreenClient*);
     201#endif
    198202
    199203    InjectedBundlePageContextMenuClient& injectedBundleContextMenuClient() { return m_contextMenuClient; }
     
    204208    InjectedBundlePageResourceLoadClient& injectedBundleResourceLoadClient() { return m_resourceLoadClient; }
    205209    InjectedBundlePageUIClient& injectedBundleUIClient() { return m_uiClient; }
     210#if ENABLE(FULLSCREEN_API)
     211    InjectedBundlePageFullScreenClient& injectedBundleFullScreenClient() { return m_fullScreenClient; }
     212#endif
    206213
    207214    bool findStringFromInjectedBundle(const String&, FindOptions);
     
    604611    InjectedBundlePageResourceLoadClient m_resourceLoadClient;
    605612    InjectedBundlePageUIClient m_uiClient;
     613#if ENABLE(FULLSCREEN_API)
     614    InjectedBundlePageFullScreenClient m_fullScreenClient;
     615#endif
    606616
    607617#if ENABLE(TILED_BACKING_STORE)
  • trunk/Tools/ChangeLog

    r84205 r84206  
     12011-04-05  Jer Noble  <jer.noble@apple.com>
     2
     3        Reviewed by Sam Weinig.
     4
     5        WebKit2: WKTR should support WebKit2 full screen APIs
     6        https://bugs.webkit.org/show_bug.cgi?id=56318
     7
     8        Respond to enterFullScreenForElement() and exitFullScreenForElement(), allowing
     9        WKTR to test the LayoutTest/fullscreen/ tests.
     10
     11        * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
     12        (WTR::InjectedBundlePage::InjectedBundlePage): Add support for WKBundlePageFullScreenClient.
     13        (WTR::InjectedBundlePage::supportsFullScreen): Added.
     14        (WTR::InjectedBundlePage::enterFullScreenForElement): Added.
     15        (WTR::InjectedBundlePage::exitFullScreenForElement): Added.
     16        * WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
     17        * WebKitTestRunner/TestController.cpp:
     18        (WTR::TestController::resetStateToConsistentValues): Enable the full screen preference.
     19
    1202011-04-18  Dirk Pranke  <dpranke@chromium.org>
    221
  • trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp

    r84070 r84206  
    245245    };
    246246    WKBundlePageSetEditorClient(m_page, &editorClient);
     247
     248#if ENABLE(FULLSCREEN_API)
     249    WKBundlePageFullScreenClient fullScreenClient = {
     250        0,
     251        this,
     252        supportsFullScreen,
     253        enterFullScreenForElement,
     254        exitFullScreenForElement,
     255    };
     256    WKBundlePageSetFullScreenClient(m_page, &fullScreenClient);
     257#endif
    247258}
    248259
     
    9991010}
    10001011
     1012#if ENABLE(FULLSCREEN_API)
     1013bool InjectedBundlePage::supportsFullScreen(WKBundlePageRef pageRef, WKFullScreenKeyboardRequestType requestType)
     1014{
     1015    InjectedBundle::shared().os() << "supportsFullScreen() == true\n";
     1016    return true;
     1017}
     1018
     1019void InjectedBundlePage::enterFullScreenForElement(WKBundlePageRef pageRef, WKBundleNodeHandleRef elementRef)
     1020{
     1021    InjectedBundle::shared().os() << "enterFullScreenForElement()\n";
     1022    WKBundlePageWillEnterFullScreen(pageRef);
     1023    WKBundlePageDidEnterFullScreen(pageRef);
     1024}
     1025
     1026void InjectedBundlePage::exitFullScreenForElement(WKBundlePageRef pageRef, WKBundleNodeHandleRef elementRef)
     1027{
     1028    InjectedBundle::shared().os() << "exitFullScreenForElement()\n";
     1029    WKBundlePageWillExitFullScreen(pageRef);
     1030    WKBundlePageDidExitFullScreen(pageRef);
     1031}
     1032#endif
     1033
    10011034static bool compareByTargetName(WKBundleBackForwardListItemRef item1, WKBundleBackForwardListItemRef item2)
    10021035{
  • trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.h

    r83550 r84206  
    117117    void willRunJavaScriptPrompt(WKStringRef message, WKStringRef defaultValue, WKBundleFrameRef);
    118118
     119#if ENABLE(FULLSCREEN_API)
     120    // Full Screen client
     121    static bool supportsFullScreen(WKBundlePageRef, WKFullScreenKeyboardRequestType);
     122    static void enterFullScreenForElement(WKBundlePageRef, WKBundleNodeHandleRef element);
     123    static void exitFullScreenForElement(WKBundlePageRef, WKBundleNodeHandleRef element);
     124#endif
     125
    119126    // Editor client
    120127    static bool shouldBeginEditing(WKBundlePageRef, WKBundleRangeHandleRef, const void* clientInfo);
  • trunk/Tools/WebKitTestRunner/TestController.cpp

    r84064 r84206  
    365365    WKPreferencesSetUniversalAccessFromFileURLsAllowed(preferences, true);
    366366    WKPreferencesSetFileAccessFromFileURLsAllowed(preferences, true);
     367#if ENABLE(FULLSCREEN_API)
     368    WKPreferencesSetFullScreenEnabled(preferences, true);
     369#endif
    367370
    368371    static WKStringRef standardFontFamily = WKStringCreateWithUTF8CString("Times");
Note: See TracChangeset for help on using the changeset viewer.