Title: [152241] branches/safari-537-branch/Source

Diff

Modified: branches/safari-537-branch/Source/WebCore/ChangeLog (152240 => 152241)


--- branches/safari-537-branch/Source/WebCore/ChangeLog	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebCore/ChangeLog	2013-07-01 20:07:24 UTC (rev 152241)
@@ -1,5 +1,23 @@
 2013-07-01  Lucas Forschler  <[email protected]>
 
+        Merge r152065
+
+    2013-06-26  Roger Fong  <[email protected]>
+
+            Add an accessibility delegate interface to AppleWin port.
+            https://bugs.webkit.org/show_bug.cgi?id=118094.
+
+            Reviewed by Brent Fulgham.
+
+            * accessibility/win/AXObjectCacheWin.cpp: We call the page client's AXStartFrameLoad and AXFinishFrameLoad methods here, which will in turn call the AccessibilityDelegate's callbacks.
+            (WebCore::AXObjectCache::frameLoadingEventPlatformNotification):
+            * loader/EmptyClients.h:
+            (WebCore::EmptyChromeClient::AXStartFrameLoad):
+            (WebCore::EmptyChromeClient::AXFinishFrameLoad):
+            * page/ChromeClient.h:
+
+2013-07-01  Lucas Forschler  <[email protected]>
+
         Merge r151978
 
     2013-06-25  Ryosuke Niwa  <[email protected]>

Modified: branches/safari-537-branch/Source/WebCore/accessibility/win/AXObjectCacheWin.cpp (152240 => 152241)


--- branches/safari-537-branch/Source/WebCore/accessibility/win/AXObjectCacheWin.cpp	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebCore/accessibility/win/AXObjectCacheWin.cpp	2013-07-01 20:07:24 UTC (rev 152241)
@@ -30,6 +30,7 @@
 
 #include "AccessibilityObject.h"
 #include "Chrome.h"
+#include "ChromeClient.h"
 #include "Document.h"
 #include "Page.h"
 #include "RenderObject.h"
@@ -127,8 +128,23 @@
 {
 }
 
-void AXObjectCache::frameLoadingEventPlatformNotification(AccessibilityObject*, AXLoadingEvent)
+void AXObjectCache::frameLoadingEventPlatformNotification(AccessibilityObject* obj, AXLoadingEvent notification)
 {
+    if (!obj)
+        return;
+    
+    Document* document = obj->document();
+    if (!document)
+        return;
+
+    Page* page = document->page();
+    if (!page)
+        return;
+
+    if (notification == AXLoadingStarted)
+        page->chrome().client()->AXStartFrameLoad();
+    else if (notification == AXLoadingFinished)
+        page->chrome().client()->AXFinishFrameLoad();
 }
 
 AXID AXObjectCache::platformGenerateAXID() const

Modified: branches/safari-537-branch/Source/WebCore/loader/EmptyClients.h (152240 => 152241)


--- branches/safari-537-branch/Source/WebCore/loader/EmptyClients.h	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebCore/loader/EmptyClients.h	2013-07-01 20:07:24 UTC (rev 152241)
@@ -187,6 +187,8 @@
 
 #if PLATFORM(WIN)
     virtual void setLastSetCursorToCurrentCursor() { }
+    virtual void AXStartFrameLoad() { }
+    virtual void AXFinishFrameLoad() { }
 #endif
 #if ENABLE(TOUCH_EVENTS)
     virtual void needTouchEvents(bool) { }

Modified: branches/safari-537-branch/Source/WebCore/page/ChromeClient.h (152240 => 152241)


--- branches/safari-537-branch/Source/WebCore/page/ChromeClient.h	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebCore/page/ChromeClient.h	2013-07-01 20:07:24 UTC (rev 152241)
@@ -310,6 +310,8 @@
 
 #if PLATFORM(WIN)
     virtual void setLastSetCursorToCurrentCursor() = 0;
+    virtual void AXStartFrameLoad() = 0;
+    virtual void AXFinishFrameLoad() = 0;
 #endif
 
 #if ENABLE(TOUCH_EVENTS)

Modified: branches/safari-537-branch/Source/WebKit/ChangeLog (152240 => 152241)


--- branches/safari-537-branch/Source/WebKit/ChangeLog	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebKit/ChangeLog	2013-07-01 20:07:24 UTC (rev 152241)
@@ -1,3 +1,17 @@
+2013-07-01  Lucas Forschler  <[email protected]>
+
+        Merge r152065
+
+    2013-06-26  Roger Fong  <[email protected]>
+
+            Add an accessibility delegate interface to AppleWin port.
+            https://bugs.webkit.org/show_bug.cgi?id=118094.
+
+            Reviewed by Brent Fulgham.
+
+            * WebKit.vcxproj/Interfaces/Interfaces.vcxproj:
+            * WebKit.vcxproj/Interfaces/Interfaces.vcxproj.filters:
+
 2013-06-21  Lucas Forschler  <[email protected]>
 
         Merge r151847

Modified: branches/safari-537-branch/Source/WebKit/WebKit.vcxproj/Interfaces/Interfaces.vcxproj (152240 => 152241)


--- branches/safari-537-branch/Source/WebKit/WebKit.vcxproj/Interfaces/Interfaces.vcxproj	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebKit/WebKit.vcxproj/Interfaces/Interfaces.vcxproj	2013-07-01 20:07:24 UTC (rev 152241)
@@ -161,6 +161,14 @@
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
+    <Midl Include="..\..\win\Interfaces\AccessibilityDelegate.idl">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
+    </Midl>
     <Midl Include="..\..\win\Interfaces\Accessible2\Accessible2.idl" />
     <Midl Include="..\..\win\Interfaces\Accessible2\Accessible2_2.idl" />
     <Midl Include="..\..\win\Interfaces\Accessible2\AccessibleApplication.idl" />

Modified: branches/safari-537-branch/Source/WebKit/WebKit.vcxproj/Interfaces/Interfaces.vcxproj.filters (152240 => 152241)


--- branches/safari-537-branch/Source/WebKit/WebKit.vcxproj/Interfaces/Interfaces.vcxproj.filters	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebKit/WebKit.vcxproj/Interfaces/Interfaces.vcxproj.filters	2013-07-01 20:07:24 UTC (rev 152241)
@@ -274,6 +274,9 @@
     <Midl Include="..\..\win\Interfaces\Accessible2\AccessibleApplication.idl">
       <Filter>IDL\Accessibility2</Filter>
     </Midl>
+    <Midl Include="..\..\win\Interfaces\AccessibilityDelegate.idl">
+      <Filter>IDL</Filter>
+    </Midl>
   </ItemGroup>
   <ItemGroup>
     <None Include="InterfacesPostBuild.cmd" />

Modified: branches/safari-537-branch/Source/WebKit/win/ChangeLog (152240 => 152241)


--- branches/safari-537-branch/Source/WebKit/win/ChangeLog	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebKit/win/ChangeLog	2013-07-01 20:07:24 UTC (rev 152241)
@@ -1,3 +1,27 @@
+2013-07-01  Lucas Forschler  <[email protected]>
+
+        Merge r152065
+
+    2013-06-26  Roger Fong  <[email protected]>
+
+            Add an accessibility delegate interface to AppleWin port.
+            https://bugs.webkit.org/show_bug.cgi?id=118094.
+
+            Reviewed by Brent Fulgham.
+
+            * Interfaces/AccessibilityDelegate.idl: Added.
+            * Interfaces/IWebView.idl:
+            * Interfaces/WebKit.idl:
+            * WebCoreSupport/WebChromeClient.cpp: Add methods that call into the AccessibilityDelegate.
+            (WebChromeClient::AXStartFrameLoad):
+            (WebChromeClient::AXFinishFrameLoad):
+            * WebCoreSupport/WebChromeClient.h:
+            * WebView.cpp: Add support for setting and getting the AccessibilityDelegate from the WebView.
+            (WebView::close):
+            (WebView::setAccessibilityDelegate):
+            (WebView::accessibilityDelegate):
+            * WebView.h:
+
 2013-06-27  Lucas Forschler  <[email protected]>
 
         Merge r151841

Copied: branches/safari-537-branch/Source/WebKit/win/Interfaces/AccessibilityDelegate.idl (from rev 152065, trunk/Source/WebKit/win/Interfaces/AccessibilityDelegate.idl) (0 => 152241)


--- branches/safari-537-branch/Source/WebKit/win/Interfaces/AccessibilityDelegate.idl	                        (rev 0)
+++ branches/safari-537-branch/Source/WebKit/win/Interfaces/AccessibilityDelegate.idl	2013-07-01 20:07:24 UTC (rev 152241)
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 2013 Apple Inc.  All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ */
+
+#ifndef DO_NO_IMPORTS
+import "oaidl.idl";
+import "ocidl.idl";
+#endif
+
+[
+    object,
+    oleautomation,
+    hidden,
+    uuid(C6F9232A-1E7D-4614-BDAE-150262DE6884),
+    pointer_default(unique)
+]
+
+interface IAccessibilityDelegate : IUnknown
+{
+    HRESULT fireFrameLoadStartedEvents();
+    HRESULT fireFrameLoadFinishedEvents();
+}

Modified: branches/safari-537-branch/Source/WebKit/win/Interfaces/IWebView.idl (152240 => 152241)


--- branches/safari-537-branch/Source/WebKit/win/Interfaces/IWebView.idl	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebKit/win/Interfaces/IWebView.idl	2013-07-01 20:07:24 UTC (rev 152241)
@@ -227,6 +227,22 @@
     HRESULT initWithFrame([in] RECT frame, [in] BSTR frameName, [in] BSTR groupName);
 
     /*!
+        @method accessibilityDelegate:
+        @abstract Return the WebView's accessibilityDelegate.
+        @param delegate The WebUIDelegate to set as the delegate.
+        - (void)setUIDelegate:(id)delegate;
+    */
+    HRESULT setAccessibilityDelegate([in] IAccessibilityDelegate *d);
+
+    /*!
+        @method setAccessibilityDelegate:
+        @abstract Set the WebView's accessibilityDelegate.
+        @result The WebView's WebUIDelegate.
+        - (id)UIDelegate;
+    */
+    HRESULT accessibilityDelegate([out][retval] IAccessibilityDelegate **d);
+
+    /*!
         @method setUIDelegate:
         @abstract Set the WebView's WebUIDelegate.
         @param delegate The WebUIDelegate to set as the delegate.

Modified: branches/safari-537-branch/Source/WebKit/win/Interfaces/WebKit.idl (152240 => 152241)


--- branches/safari-537-branch/Source/WebKit/win/Interfaces/WebKit.idl	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebKit/win/Interfaces/WebKit.idl	2013-07-01 20:07:24 UTC (rev 152241)
@@ -58,6 +58,7 @@
 import "AccessibleApplication.idl";
 
 #include "AccessibleComparable.idl"
+#include "AccessibilityDelegate.idl"
 #include "WebScrollbarTypes.idl"
 #include "_javascript_CoreAPITypes.idl"
 #include "IWebScriptObject.idl"

Modified: branches/safari-537-branch/Source/WebKit/win/WebCoreSupport/WebChromeClient.cpp (152240 => 152241)


--- branches/safari-537-branch/Source/WebKit/win/WebCoreSupport/WebChromeClient.cpp	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebKit/win/WebCoreSupport/WebChromeClient.cpp	2013-07-01 20:07:24 UTC (rev 152241)
@@ -857,4 +857,20 @@
     m_webView->fullScreenController()->exitFullScreen();
 }
 
+void WebChromeClient::AXStartFrameLoad()
+{
+    COMPtr<IAccessibilityDelegate> delegate;
+    m_webView->accessibilityDelegate(&delegate);
+    if (delegate)
+        delegate->fireFrameLoadStartedEvents();
+}
+
+void WebChromeClient::AXFinishFrameLoad()
+{
+    COMPtr<IAccessibilityDelegate> delegate;
+    m_webView->accessibilityDelegate(&delegate);
+    if (delegate)
+        delegate->fireFrameLoadFinishedEvents();
+}
+
 #endif

Modified: branches/safari-537-branch/Source/WebKit/win/WebCoreSupport/WebChromeClient.h (152240 => 152241)


--- branches/safari-537-branch/Source/WebKit/win/WebCoreSupport/WebChromeClient.h	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebKit/win/WebCoreSupport/WebChromeClient.h	2013-07-01 20:07:24 UTC (rev 152241)
@@ -174,6 +174,9 @@
 
     WebView* webView() { return m_webView; }
 
+    virtual void AXStartFrameLoad();
+    virtual void AXFinishFrameLoad();
+
 private:
     COMPtr<IWebUIDelegate> uiDelegate();
 

Modified: branches/safari-537-branch/Source/WebKit/win/WebView.cpp (152240 => 152241)


--- branches/safari-537-branch/Source/WebKit/win/WebView.cpp	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebKit/win/WebView.cpp	2013-07-01 20:07:24 UTC (rev 152241)
@@ -730,6 +730,7 @@
 
     setHostWindow(0);
 
+    setAccessibilityDelegate(0);
     setDownloadDelegate(0);
     setEditingDelegate(0);
     setFrameLoadDelegate(0);
@@ -2870,6 +2871,22 @@
         m_frameLoadDelegate->didReceiveIcon(this, 0, frame);
 }
 
+HRESULT WebView::setAccessibilityDelegate(
+    /* [in] */ IAccessibilityDelegate* d)
+{
+    m_accessibilityDelegate = d;
+    return S_OK;
+}
+
+HRESULT WebView::accessibilityDelegate(
+    /* [out][retval] */ IAccessibilityDelegate** d)
+{
+    if (!m_accessibilityDelegate)
+        return E_POINTER;
+
+    return m_accessibilityDelegate.copyRefTo(d);
+}
+
 HRESULT STDMETHODCALLTYPE WebView::setUIDelegate( 
     /* [in] */ IWebUIDelegate* d)
 {

Modified: branches/safari-537-branch/Source/WebKit/win/WebView.h (152240 => 152241)


--- branches/safari-537-branch/Source/WebKit/win/WebView.h	2013-07-01 19:48:10 UTC (rev 152240)
+++ branches/safari-537-branch/Source/WebKit/win/WebView.h	2013-07-01 20:07:24 UTC (rev 152241)
@@ -139,6 +139,12 @@
         /* [in] */ BSTR frameName,
         /* [in] */ BSTR groupName);
 
+    virtual HRESULT STDMETHODCALLTYPE setAccessibilityDelegate(
+        /* [in] */ IAccessibilityDelegate *d);
+
+    virtual HRESULT STDMETHODCALLTYPE accessibilityDelegate(
+        /* [out][retval] */ IAccessibilityDelegate **d);
+
     virtual HRESULT STDMETHODCALLTYPE setUIDelegate( 
         /* [in] */ IWebUIDelegate *d);
     
@@ -1079,6 +1085,7 @@
     SIZE m_backingStoreSize;
     RefPtr<RefCountedHRGN> m_backingStoreDirtyRegion;
 
+    COMPtr<IAccessibilityDelegate> m_accessibilityDelegate;
     COMPtr<IWebEditingDelegate> m_editingDelegate;
     COMPtr<IWebFrameLoadDelegate> m_frameLoadDelegate;
     COMPtr<IWebFrameLoadDelegatePrivate> m_frameLoadDelegatePrivate;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to