Diff
Modified: trunk/ChangeLog (135568 => 135569)
--- trunk/ChangeLog 2012-11-23 09:13:31 UTC (rev 135568)
+++ trunk/ChangeLog 2012-11-23 09:22:13 UTC (rev 135569)
@@ -1,3 +1,15 @@
+2012-11-23 Krzysztof Czech <[email protected]>
+
+ [EFL] Platform support for Accessibility feature.
+ https://bugs.webkit.org/show_bug.cgi?id=100848
+
+ Reviewed by Gyuyoung Kim.
+
+ Add support for ATK library.
+
+ * Source/cmake/FindATK.cmake: Added.
+ * Source/cmake/OptionsEfl.cmake:
+
2012-09-26 Gustavo Noronha Silva <[email protected]>
[GTK] Split SVG from WebCore to work-around make limitation
Modified: trunk/Source/WTF/ChangeLog (135568 => 135569)
--- trunk/Source/WTF/ChangeLog 2012-11-23 09:13:31 UTC (rev 135568)
+++ trunk/Source/WTF/ChangeLog 2012-11-23 09:22:13 UTC (rev 135569)
@@ -1,3 +1,14 @@
+2012-11-23 Krzysztof Czech <[email protected]>
+
+ [EFL] Platform support for Accessibility feature.
+ https://bugs.webkit.org/show_bug.cgi?id=100848
+
+ Reviewed by Gyuyoung Kim.
+
+ Enable HAVE(ACCESSIBILITY) ifdefs so that EFL port can use it.
+
+ * wtf/Platform.h:
+
2012-11-22 Michael Saboff <[email protected]>
HTML integer parsing functions don't natively handle 8 bit strings
Modified: trunk/Source/WTF/wtf/Platform.h (135568 => 135569)
--- trunk/Source/WTF/wtf/Platform.h 2012-11-23 09:13:31 UTC (rev 135568)
+++ trunk/Source/WTF/wtf/Platform.h 2012-11-23 09:22:13 UTC (rev 135569)
@@ -657,7 +657,7 @@
#endif
#if !defined(HAVE_ACCESSIBILITY)
-#if PLATFORM(IOS) || PLATFORM(MAC) || PLATFORM(WIN) || PLATFORM(GTK) || (PLATFORM(CHROMIUM) && !OS(ANDROID))
+#if PLATFORM(IOS) || PLATFORM(MAC) || PLATFORM(WIN) || PLATFORM(GTK) || (PLATFORM(CHROMIUM) && !OS(ANDROID)) || PLATFORM(EFL)
#define HAVE_ACCESSIBILITY 1
#endif
#endif /* !defined(HAVE_ACCESSIBILITY) */
Modified: trunk/Source/WebCore/ChangeLog (135568 => 135569)
--- trunk/Source/WebCore/ChangeLog 2012-11-23 09:13:31 UTC (rev 135568)
+++ trunk/Source/WebCore/ChangeLog 2012-11-23 09:22:13 UTC (rev 135569)
@@ -1,3 +1,21 @@
+2012-11-23 Krzysztof Czech <[email protected]>
+
+ [EFL] Platform support for Accessibility feature.
+ https://bugs.webkit.org/show_bug.cgi?id=100848
+
+ Reviewed by Gyuyoung Kim.
+
+ Add EFL platform's definitions to enable proper accessibility routines.
+
+ No new tests. Covered by existing layout tests.
+
+ * PlatformEfl.cmake: Add accessibility/atk content to compilation.
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::AccessibilityObject::AccessibilityObject):
+ * accessibility/AccessibilityObject.h:
+ (AccessibilityObject):
+ * accessibility/efl/AccessibilityObjectEfl.cpp: Removed. No needed platform specific implementation. ATK shared implementation will be used.
+
2012-11-23 Thiago Marcos P. Santos <[email protected]>
Expose DOM interface for CSS Device Adaptation
Modified: trunk/Source/WebCore/PlatformEfl.cmake (135568 => 135569)
--- trunk/Source/WebCore/PlatformEfl.cmake 2012-11-23 09:13:31 UTC (rev 135568)
+++ trunk/Source/WebCore/PlatformEfl.cmake 2012-11-23 09:22:13 UTC (rev 135569)
@@ -1,5 +1,5 @@
LIST(APPEND WebCore_INCLUDE_DIRECTORIES
- "${WEBCORE_DIR}/accessibility/efl"
+ "${WEBCORE_DIR}/accessibility/atk"
"${WEBCORE_DIR}/page/efl"
"${WEBCORE_DIR}/platform/cairo"
"${WEBCORE_DIR}/platform/efl"
@@ -13,10 +13,26 @@
"${WEBCORE_DIR}/platform/network/soup"
"${WEBCORE_DIR}/platform/text/efl"
"${WEBCORE_DIR}/plugins/efl"
+ ${ATK_INCLUDE_DIRS}
)
LIST(APPEND WebCore_SOURCES
- accessibility/efl/AccessibilityObjectEfl.cpp
+ accessibility/atk/AXObjectCacheAtk.cpp
+ accessibility/atk/AccessibilityObjectAtk.cpp
+ accessibility/atk/WebKitAccessibleHyperlink.cpp
+ accessibility/atk/WebKitAccessibleInterfaceAction.cpp
+ accessibility/atk/WebKitAccessibleInterfaceComponent.cpp
+ accessibility/atk/WebKitAccessibleInterfaceDocument.cpp
+ accessibility/atk/WebKitAccessibleInterfaceEditableText.cpp
+ accessibility/atk/WebKitAccessibleInterfaceHyperlinkImpl.cpp
+ accessibility/atk/WebKitAccessibleInterfaceHypertext.cpp
+ accessibility/atk/WebKitAccessibleInterfaceImage.cpp
+ accessibility/atk/WebKitAccessibleInterfaceSelection.cpp
+ accessibility/atk/WebKitAccessibleInterfaceTable.cpp
+ accessibility/atk/WebKitAccessibleInterfaceText.cpp
+ accessibility/atk/WebKitAccessibleInterfaceValue.cpp
+ accessibility/atk/WebKitAccessibleUtil.cpp
+ accessibility/atk/WebKitAccessibleWrapperAtk.cpp
editing/SmartReplaceICU.cpp
page/efl/DragControllerEfl.cpp
page/efl/EventHandlerEfl.cpp
@@ -161,6 +177,7 @@
ENDIF ()
LIST(APPEND WebCore_LIBRARIES
+ ${ATK_LIBRARIES}
${CAIRO_LIBRARIES}
${ECORE_LIBRARIES}
${ECORE_EVAS_LIBRARIES}
Modified: trunk/Source/WebCore/accessibility/AccessibilityObject.cpp (135568 => 135569)
--- trunk/Source/WebCore/accessibility/AccessibilityObject.cpp 2012-11-23 09:13:31 UTC (rev 135568)
+++ trunk/Source/WebCore/accessibility/AccessibilityObject.cpp 2012-11-23 09:22:13 UTC (rev 135569)
@@ -73,7 +73,7 @@
, m_haveChildren(false)
, m_role(UnknownRole)
, m_cachedIsIgnoredValue(DefaultBehavior)
-#if PLATFORM(GTK)
+#if PLATFORM(GTK) || PLATFORM(EFL)
, m_wrapper(0)
#elif PLATFORM(CHROMIUM)
, m_detached(false)
Modified: trunk/Source/WebCore/accessibility/AccessibilityObject.h (135568 => 135569)
--- trunk/Source/WebCore/accessibility/AccessibilityObject.h 2012-11-23 09:13:31 UTC (rev 135568)
+++ trunk/Source/WebCore/accessibility/AccessibilityObject.h 2012-11-23 09:22:13 UTC (rev 135569)
@@ -61,7 +61,7 @@
typedef WebAccessibilityObjectWrapper AccessibilityObjectWrapper;
-#elif PLATFORM(GTK)
+#elif PLATFORM(GTK) || PLATFORM(EFL)
typedef struct _AtkObject AtkObject;
typedef struct _AtkObject AccessibilityObjectWrapper;
#elif PLATFORM(CHROMIUM)
@@ -778,7 +778,7 @@
virtual String mathFencedCloseString() const { return String(); }
#if HAVE(ACCESSIBILITY)
-#if PLATFORM(GTK)
+#if PLATFORM(GTK) || PLATFORM(EFL)
AccessibilityObjectWrapper* wrapper() const;
void setWrapper(AccessibilityObjectWrapper*);
#elif !PLATFORM(CHROMIUM)
@@ -826,7 +826,7 @@
static bool objectMatchesSearchCriteriaWithResultLimit(AccessibilityObject*, AccessibilitySearchCriteria*, AccessibilityChildrenVector&);
virtual AccessibilityRole buttonRoleType() const;
-#if PLATFORM(GTK)
+#if PLATFORM(GTK) || PLATFORM(EFL)
bool allowsTextRanges() const;
unsigned getLengthForTextRange() const;
#else
@@ -838,7 +838,7 @@
RetainPtr<WebAccessibilityObjectWrapper> m_wrapper;
#elif PLATFORM(WIN) && !OS(WINCE)
COMPtr<AccessibilityObjectWrapper> m_wrapper;
-#elif PLATFORM(GTK)
+#elif PLATFORM(GTK) || PLATFORM(EFL)
AtkObject* m_wrapper;
#elif PLATFORM(CHROMIUM)
bool m_detached;
Deleted: trunk/Source/WebCore/accessibility/efl/AccessibilityObjectEfl.cpp (135568 => 135569)
--- trunk/Source/WebCore/accessibility/efl/AccessibilityObjectEfl.cpp 2012-11-23 09:13:31 UTC (rev 135568)
+++ trunk/Source/WebCore/accessibility/efl/AccessibilityObjectEfl.cpp 2012-11-23 09:22:13 UTC (rev 135569)
@@ -1,36 +0,0 @@
-/*
- * Copyright (C) 2008 Apple Ltd.
- * Copyright (C) 2009-2010 ProFUSION embedded systems
- * Copyright (C) 2009-2010 Samsung Electronics
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "AccessibilityObject.h"
-
-#if HAVE(ACCESSIBILITY)
-
-namespace WebCore {
-
-bool AccessibilityObject::accessibilityIgnoreAttachment() const
-{
- return false;
-}
-
-} // namespace WebCore
-
-#endif // HAVE(ACCESSIBILITY)
Added: trunk/Source/cmake/FindATK.cmake (0 => 135569)
--- trunk/Source/cmake/FindATK.cmake (rev 0)
+++ trunk/Source/cmake/FindATK.cmake 2012-11-23 09:22:13 UTC (rev 135569)
@@ -0,0 +1,44 @@
+# - Try to find ATK
+# Once done, this will define
+#
+# ATK_INCLUDE_DIRS - the ATK include drectories
+# ATK_LIBRARIES - link these to use ATK
+#
+# Copyright (C) 2012 Samsung Electronics
+#
+# 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 THE COPYRIGHT HOLDER AND ITS CONTRIBUTORS ``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 THE COPYRIGHT HOLDER OR ITS
+# 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.
+
+FIND_PACKAGE(PkgConfig)
+PKG_CHECK_MODULES(PC_ATK atk)
+
+FIND_PATH(ATK_INCLUDE_DIRS
+ NAMES atk/atk.h
+ HINTS ${PC_ATK_INCLUDEDIR}
+ ${PC_ATK_INCLUDE_DIRS}
+ PATH_SUFFIXES atk-1.0
+)
+
+FIND_LIBRARY(ATK_LIBRARIES
+ NAMES atk-1.0
+ HINTS ${PC_ATK_LIBRARY_DIRS}
+ ${PC_ATK_LIBDIR}
+)
Modified: trunk/Source/cmake/OptionsEfl.cmake (135568 => 135569)
--- trunk/Source/cmake/OptionsEfl.cmake 2012-11-23 09:13:31 UTC (rev 135568)
+++ trunk/Source/cmake/OptionsEfl.cmake 2012-11-23 09:22:13 UTC (rev 135569)
@@ -192,3 +192,5 @@
IF (ENABLE_SPELLCHECK)
FIND_PACKAGE(Enchant REQUIRED)
ENDIF()
+
+FIND_PACKAGE(ATK REQUIRED)