[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.22-985-g3c00f00

eric at webkit.org eric at webkit.org
Wed Mar 17 18:43:12 UTC 2010


The following commit has been merged in the webkit-1.1 branch:
commit 80264007705a740cbc103b0cb3399ad6c3f5c35b
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Mar 16 05:15:59 2010 +0000

    2010-03-15  Joanmarie Diggs  <joanmarie.diggs at gmail.com>
    
            Reviewed by Holger Freyther.
    
            https://bugs.webkit.org/show_bug.cgi?id=35502
            [Gtk] Objects of ATK_ROLE_TABLE should not implement AtkText
    
            Simple change to stop tables from implementing AtkText.
    
            * accessibility/gtk/AccessibilityObjectAtk.cpp:
            (getInterfaceMaskFromObject):
    2010-03-15  Joanmarie Diggs  <joanmarie.diggs at gmail.com>
    
            Reviewed by Holger Freyther.
    
            https://bugs.webkit.org/show_bug.cgi?id=35502
            [Gtk] Objects of ATK_ROLE_TABLE should not implement AtkText
    
            New test to be sure we do not accidentally implement AtkText for tables
    
            * tests/testatk.c
            (testWebkitAtkGetTextInTable):
            (main):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@56036 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index ae95a9e..4afb53d 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,15 @@
+2010-03-15  Joanmarie Diggs  <joanmarie.diggs at gmail.com>
+
+        Reviewed by Holger Freyther.
+
+        https://bugs.webkit.org/show_bug.cgi?id=35502
+        [Gtk] Objects of ATK_ROLE_TABLE should not implement AtkText
+
+        Simple change to stop tables from implementing AtkText.
+
+        * accessibility/gtk/AccessibilityObjectAtk.cpp:
+        (getInterfaceMaskFromObject):
+
 2010-03-15  Adam Bergkvist  <adam.bergkvist at ericsson.com>
 
         Reviewed by Adam Barth.
diff --git a/WebCore/accessibility/gtk/AccessibilityObjectWrapperAtk.cpp b/WebCore/accessibility/gtk/AccessibilityObjectWrapperAtk.cpp
index c5bc01d..0e4abce 100644
--- a/WebCore/accessibility/gtk/AccessibilityObjectWrapperAtk.cpp
+++ b/WebCore/accessibility/gtk/AccessibilityObjectWrapperAtk.cpp
@@ -1661,7 +1661,7 @@ static guint16 getInterfaceMaskFromObject(AccessibilityObject* coreObject)
             interfaceMask |= 1 << WAI_TEXT;
             if (!coreObject->isReadOnly())
                 interfaceMask |= 1 << WAI_EDITABLE_TEXT;
-        } else if (static_cast<AccessibilityRenderObject*>(coreObject)->renderer()->childrenInline())
+        } else if (role != TableRole && static_cast<AccessibilityRenderObject*>(coreObject)->renderer()->childrenInline())
             interfaceMask |= 1 << WAI_TEXT;
 
     // Image
diff --git a/WebKit/gtk/ChangeLog b/WebKit/gtk/ChangeLog
index 8cffe90..519caa5 100644
--- a/WebKit/gtk/ChangeLog
+++ b/WebKit/gtk/ChangeLog
@@ -1,3 +1,16 @@
+2010-03-15  Joanmarie Diggs  <joanmarie.diggs at gmail.com>
+
+        Reviewed by Holger Freyther.
+
+        https://bugs.webkit.org/show_bug.cgi?id=35502
+        [Gtk] Objects of ATK_ROLE_TABLE should not implement AtkText
+
+        New test to be sure we do not accidentally implement AtkText for tables
+
+        * tests/testatk.c
+        (testWebkitAtkGetTextInTable):
+        (main):
+
 2010-03-09  Philippe Normand  <pnormand at igalia.com>
 
         Reviewed by Holger Freyther.
diff --git a/WebKit/gtk/tests/testatk.c b/WebKit/gtk/tests/testatk.c
index 7db274a..1f1ab0c 100644
--- a/WebKit/gtk/tests/testatk.c
+++ b/WebKit/gtk/tests/testatk.c
@@ -38,6 +38,8 @@ static const char* contentsInParagraphAndBodySimple = "<html><body><p>This is a
 
 static const char* contentsInParagraphAndBodyModerate = "<html><body><p>This is a test.</p>Hello world.<br /><font color='#00cc00'>This sentence is green.</font><br />This one is not.</body></html>";
 
+static const char* contentsInTable = "<html><body><table><tr><td>foo</td><td>bar</td></tr></table></body></html>";
+
 static gboolean bail_out(GMainLoop* loop)
 {
     if (g_main_loop_is_running(loop))
@@ -450,6 +452,34 @@ static void testWebkitAtkGetTextInParagraphAndBodyModerate(void)
     g_object_unref(webView);
 }
 
+static void testWebkitAtkGetTextInTable(void)
+{
+    WebKitWebView* webView;
+    AtkObject* obj;
+    GMainLoop* loop;
+
+    webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
+    g_object_ref_sink(webView);
+    GtkAllocation alloc = { 0, 0, 800, 600 };
+    gtk_widget_size_allocate(GTK_WIDGET(webView), &alloc);
+    webkit_web_view_load_string(webView, contentsInTable, NULL, NULL, NULL);
+    loop = g_main_loop_new(NULL, TRUE);
+
+    g_timeout_add(100, (GSourceFunc)bail_out, loop);
+    g_main_loop_run(loop);
+
+    obj = gtk_widget_get_accessible(GTK_WIDGET(webView));
+    g_assert(obj);
+    obj = atk_object_ref_accessible_child(obj, 0);
+    g_assert(obj);
+
+    /* Tables should not implement AtkText */
+    g_assert(G_TYPE_INSTANCE_GET_INTERFACE(obj, ATK_TYPE_TEXT, AtkTextIface) == NULL);
+
+    g_object_unref(obj);
+    g_object_unref(webView);
+}
+
 int main(int argc, char** argv)
 {
     g_thread_init(NULL);
@@ -463,6 +493,7 @@ int main(int argc, char** argv)
     g_test_add_func("/webkit/atk/get_text_at_offset_text_input", test_webkit_atk_get_text_at_offset_text_input);
     g_test_add_func("/webkit/atk/getTextInParagraphAndBodySimple", testWebkitAtkGetTextInParagraphAndBodySimple);
     g_test_add_func("/webkit/atk/getTextInParagraphAndBodyModerate", testWebkitAtkGetTextInParagraphAndBodyModerate);
+    g_test_add_func("/webkit/atk/getTextInTable", testWebkitAtkGetTextInTable);
     return g_test_run ();
 }
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list