diff options
author | Simon Hausmann <simon.hausmann@digia.com> | 2012-10-18 10:55:06 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2012-10-18 10:55:06 +0200 |
commit | ee4c86d1990a9e26277a6948e7027ad8d525ebfa (patch) | |
tree | 1e2d3408cd097606571f40ab63353c27bcb7dd5c /Tools/DumpRenderTree | |
parent | d882bec96d0d30aeeda2141bfadfca7f038ee862 (diff) | |
download | qtwebkit-ee4c86d1990a9e26277a6948e7027ad8d525ebfa.tar.gz |
Imported WebKit commit 795dcd25a9649fccaf1c9b685f6e2ffedaf7e620 (http://svn.webkit.org/repository/webkit/trunk@131718)
New snapshot that includes the return of -fkeep-memory at link time
to reduce memory pressure as well as modularized documentation
Diffstat (limited to 'Tools/DumpRenderTree')
7 files changed, 145 insertions, 25 deletions
diff --git a/Tools/DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp b/Tools/DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp index 4145b9cc0..a24051584 100644 --- a/Tools/DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp +++ b/Tools/DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp @@ -132,20 +132,22 @@ 'dependencies': [ 'LayoutTestHelper', ], - 'mac_bundle_resources': [ - '<(ahem_path)', - '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher100.ttf', - '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher200.ttf', - '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher300.ttf', - '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher400.ttf', - '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher500.ttf', - '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher600.ttf', - '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher700.ttf', - '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher800.ttf', - '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher900.ttf', - '<(SHARED_INTERMEDIATE_DIR)/webkit/missingImage.png', - '<(SHARED_INTERMEDIATE_DIR)/webkit/textAreaResizeCorner.png', - ], + 'all_dependent_settings': { + 'mac_bundle_resources': [ + '<(ahem_path)', + '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher100.ttf', + '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher200.ttf', + '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher300.ttf', + '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher400.ttf', + '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher500.ttf', + '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher600.ttf', + '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher700.ttf', + '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher800.ttf', + '<(tools_dir)/DumpRenderTree/fonts/WebKitWeightWatcher900.ttf', + '<(SHARED_INTERMEDIATE_DIR)/webkit/missingImage.png', + '<(SHARED_INTERMEDIATE_DIR)/webkit/textAreaResizeCorner.png', + ], + }, }], ['use_x11 == 1', { 'copies': [{ @@ -541,7 +543,6 @@ '-DPRODUCT_DIR=<(ant_build_out)', '--ant-args', '-DCHROMIUM_SRC=<(ant_build_to_chromium_src)', - '--sdk-build=<(sdk_build)', '--app_abi', '<(android_app_abi)', ], diff --git a/Tools/DumpRenderTree/chromium/DRTTestRunner.cpp b/Tools/DumpRenderTree/chromium/DRTTestRunner.cpp index 8aee7c5b2..082597a11 100644 --- a/Tools/DumpRenderTree/chromium/DRTTestRunner.cpp +++ b/Tools/DumpRenderTree/chromium/DRTTestRunner.cpp @@ -1392,12 +1392,13 @@ void DRTTestRunner::setIsolatedWorldSecurityOrigin(const CppArgumentList& argume { result->setNull(); - if (arguments.size() != 2 || !arguments[0].isNumber() || !arguments[1].isString()) + if (arguments.size() != 2 || !arguments[0].isNumber() || !(arguments[1].isString() || arguments[1].isNull())) return; - m_shell->webView()->focusedFrame()->setIsolatedWorldSecurityOrigin( - arguments[0].toInt32(), - WebSecurityOrigin::createFromString(cppVariantToWebString(arguments[1]))); + WebSecurityOrigin origin; + if (arguments[1].isString()) + origin = WebSecurityOrigin::createFromString(cppVariantToWebString(arguments[1])); + m_shell->webView()->focusedFrame()->setIsolatedWorldSecurityOrigin(arguments[0].toInt32(), origin); } void DRTTestRunner::setAllowUniversalAccessFromFileURLs(const CppArgumentList& arguments, CppVariant* result) diff --git a/Tools/DumpRenderTree/chromium/TestRunner/GamepadController.cpp b/Tools/DumpRenderTree/chromium/TestRunner/GamepadController.cpp index 35b7dfa38..cb36bfdfb 100644 --- a/Tools/DumpRenderTree/chromium/TestRunner/GamepadController.cpp +++ b/Tools/DumpRenderTree/chromium/TestRunner/GamepadController.cpp @@ -128,6 +128,8 @@ void GamepadController::setButtonCount(const CppArgumentList& args, CppVariant* if (index < 0 || index >= static_cast<int>(WebKit::WebGamepads::itemsLengthCap)) return; int buttons = args[1].toInt32(); + if (buttons < 0 || buttons >= static_cast<int>(WebKit::WebGamepad::buttonsLengthCap)) + return; m_gamepads.items[index].buttonsLength = buttons; m_delegate->setGamepadData(m_gamepads); result->setNull(); @@ -143,6 +145,8 @@ void GamepadController::setButtonData(const CppArgumentList& args, CppVariant* r if (index < 0 || index >= static_cast<int>(WebKit::WebGamepads::itemsLengthCap)) return; int button = args[1].toInt32(); + if (button < 0 || button >= static_cast<int>(WebKit::WebGamepad::buttonsLengthCap)) + return; double data = args[2].toDouble(); m_gamepads.items[index].buttons[button] = data; m_delegate->setGamepadData(m_gamepads); @@ -159,6 +163,8 @@ void GamepadController::setAxisCount(const CppArgumentList& args, CppVariant* re if (index < 0 || index >= static_cast<int>(WebKit::WebGamepads::itemsLengthCap)) return; int axes = args[1].toInt32(); + if (axes < 0 || axes >= static_cast<int>(WebKit::WebGamepad::axesLengthCap)) + return; m_gamepads.items[index].axesLength = axes; m_delegate->setGamepadData(m_gamepads); result->setNull(); @@ -174,6 +180,8 @@ void GamepadController::setAxisData(const CppArgumentList& args, CppVariant* res if (index < 0 || index >= static_cast<int>(WebKit::WebGamepads::itemsLengthCap)) return; int axis = args[1].toInt32(); + if (axis < 0 || axis >= static_cast<int>(WebKit::WebGamepad::axesLengthCap)) + return; double data = args[2].toDouble(); m_gamepads.items[index].axes[axis] = data; m_delegate->setGamepadData(m_gamepads); diff --git a/Tools/DumpRenderTree/chromium/TestWebPlugin.cpp b/Tools/DumpRenderTree/chromium/TestWebPlugin.cpp index c54ebedea..7080bef18 100644 --- a/Tools/DumpRenderTree/chromium/TestWebPlugin.cpp +++ b/Tools/DumpRenderTree/chromium/TestWebPlugin.cpp @@ -125,6 +125,7 @@ TestWebPlugin::TestWebPlugin(WebKit::WebFrame* frame, , m_context(0) , m_acceptsTouchEvent(false) , m_printEventDetails(false) + , m_canProcessDrag(false) { static const WebString kAttributePrimitive = WebString::fromUTF8("primitive"); static const WebString kAttributeBackgroundColor = WebString::fromUTF8("background-color"); @@ -132,6 +133,7 @@ TestWebPlugin::TestWebPlugin(WebKit::WebFrame* frame, static const WebString kAttributeOpacity = WebString::fromUTF8("opacity"); static const WebString kAttributeAcceptsTouch = WebString::fromUTF8("accepts-touch"); static const WebString kAttributePrintEventDetails = WebString::fromUTF8("print-event-details"); + static const WebString kAttributeCanProcessDrag = WebString::fromUTF8("can-process-drag"); ASSERT(params.attributeNames.size() == params.attributeValues.size()); size_t size = params.attributeNames.size(); @@ -151,6 +153,8 @@ TestWebPlugin::TestWebPlugin(WebKit::WebFrame* frame, m_acceptsTouchEvent = parseBoolean(attributeValue); else if (attributeName == kAttributePrintEventDetails) m_printEventDetails = parseBoolean(attributeValue); + else if (attributeName == kAttributeCanProcessDrag) + m_canProcessDrag = parseBoolean(attributeValue); } } diff --git a/Tools/DumpRenderTree/chromium/TestWebPlugin.h b/Tools/DumpRenderTree/chromium/TestWebPlugin.h index aa6533e32..49fde85aa 100644 --- a/Tools/DumpRenderTree/chromium/TestWebPlugin.h +++ b/Tools/DumpRenderTree/chromium/TestWebPlugin.h @@ -56,6 +56,7 @@ public: virtual bool initialize(WebKit::WebPluginContainer*); virtual void destroy(); virtual NPObject* scriptableObject() { return 0; } + virtual bool canProcessDrag() const { return m_canProcessDrag; } virtual void paint(WebKit::WebCanvas*, const WebKit::WebRect&) { } virtual void updateGeometry(const WebKit::WebRect& frameRect, const WebKit::WebRect& clipRect, @@ -132,6 +133,7 @@ private: bool m_acceptsTouchEvent; bool m_printEventDetails; + bool m_canProcessDrag; }; #endif // TestPepperPlugin_h diff --git a/Tools/DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp b/Tools/DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp index 25c49e314..b00c583f0 100644 --- a/Tools/DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp +++ b/Tools/DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp @@ -37,6 +37,114 @@ #include <wtf/text/WTFString.h> #include <wtf/unicode/CharacterNames.h> +static inline String roleToString(AtkRole role) +{ + switch (role) { + case ATK_ROLE_ALERT: + return "AXRole: AXAlert"; + case ATK_ROLE_CANVAS: + return "AXRole: AXCanvas"; + case ATK_ROLE_CHECK_BOX: + return "AXRole: AXCheckBox"; + case ATK_ROLE_COLUMN_HEADER: + return "AXRole: AXColumnHeader"; + case ATK_ROLE_COMBO_BOX: + return "AXRole: AXComboBox"; + case ATK_ROLE_DOCUMENT_FRAME: + return "AXRole: AXWebArea"; + case ATK_ROLE_ENTRY: + return "AXRole: AXTextField"; + case ATK_ROLE_FOOTER: + return "AXRole: AXFooter"; + case ATK_ROLE_FORM: + return "AXRole: AXForm"; + case ATK_ROLE_GROUPING: + return "AXRole: AXGroup"; + case ATK_ROLE_HEADING: + return "AXRole: AXHeading"; + case ATK_ROLE_IMAGE: + return "AXRole: AXImage"; + case ATK_ROLE_IMAGE_MAP: + return "AXRole: AXImageMap"; + case ATK_ROLE_LABEL: + return "AXRole: AXLabel"; + case ATK_ROLE_LINK: + return "AXRole: AXLink"; + case ATK_ROLE_LIST: + return "AXRole: AXList"; + case ATK_ROLE_LIST_BOX: + return "AXRole: AXListBox"; + case ATK_ROLE_LIST_ITEM: + return "AXRole: AXListItem"; + case ATK_ROLE_MENU: + return "AXRole: AXMenu"; + case ATK_ROLE_MENU_BAR: + return "AXRole: AXMenuBar"; + case ATK_ROLE_MENU_ITEM: + return "AXRole: AXMenuItem"; + case ATK_ROLE_PAGE_TAB: + return "AXRole: AXTab"; + case ATK_ROLE_PAGE_TAB_LIST: + return "AXRole: AXTabGroup"; + case ATK_ROLE_PANEL: + return "AXRole: AXGroup"; + case ATK_ROLE_PARAGRAPH: + return "AXRole: AXParagraph"; + case ATK_ROLE_PASSWORD_TEXT: + return "AXRole: AXPasswordField"; + case ATK_ROLE_PUSH_BUTTON: + return "AXRole: AXButton"; + case ATK_ROLE_RADIO_BUTTON: + return "AXRole: AXRadioButton"; + case ATK_ROLE_ROW_HEADER: + return "AXRole: AXRowHeader"; + case ATK_ROLE_RULER: + return "AXRole: AXRuler"; + case ATK_ROLE_SCROLL_BAR: + return "AXRole: AXScrollBar"; + case ATK_ROLE_SCROLL_PANE: + return "AXRole: AXScrollArea"; + case ATK_ROLE_SECTION: + return "AXRole: AXDiv"; + case ATK_ROLE_SEPARATOR: + return "AXRole: AXHorizontalRule"; + case ATK_ROLE_SLIDER: + return "AXRole: AXSlider"; + case ATK_ROLE_SPIN_BUTTON: + return "AXRole: AXSpinButton"; + case ATK_ROLE_TABLE: + return "AXRole: AXTable"; + case ATK_ROLE_TABLE_CELL: + return "AXRole: AXCell"; + case ATK_ROLE_TABLE_COLUMN_HEADER: + return "AXRole: AXColumnHeader"; + case ATK_ROLE_TABLE_ROW: + return "AXRole: AXRow"; + case ATK_ROLE_TABLE_ROW_HEADER: + return "AXRole: AXRowHeader"; + case ATK_ROLE_TOGGLE_BUTTON: + return "AXRole: AXToggleButton"; + case ATK_ROLE_TOOL_BAR: + return "AXRole: AXToolbar"; + case ATK_ROLE_TOOL_TIP: + return "AXRole: AXUserInterfaceTooltip"; + case ATK_ROLE_TREE: + return "AXRole: AXTree"; + case ATK_ROLE_TREE_TABLE: + return "AXRole: AXTreeGrid"; + case ATK_ROLE_TREE_ITEM: + return "AXRole: AXTreeItem"; + case ATK_ROLE_WINDOW: + return "AXRole: AXWindow"; + case ATK_ROLE_UNKNOWN: + return "AXRole: AXUnknown"; + default: + // We want to distinguish ATK_ROLE_UNKNOWN from a known AtkRole which + // our DRT isn't properly handling. + return "AXRole: FIXME not identified"; + } +} + static inline gchar* replaceCharactersForResults(gchar* str) { String uString = String::fromUTF8(str); @@ -246,14 +354,11 @@ JSStringRef AccessibilityUIElement::parameterizedAttributeNames() JSStringRef AccessibilityUIElement::role() { AtkRole role = atk_object_get_role(ATK_OBJECT(m_element)); - if (!role) return JSStringCreateWithCharacters(0, 0); - const gchar* roleName = atk_role_get_name(role); - GOwnPtr<gchar> axRole(g_strdup_printf("AXRole: %s", roleName)); - - return JSStringCreateWithUTF8CString(axRole.get()); + String roleString = roleToString(role); + return JSStringCreateWithUTF8CString(roleString.utf8().data()); } JSStringRef AccessibilityUIElement::subrole() diff --git a/Tools/DumpRenderTree/mac/DumpRenderTree.mm b/Tools/DumpRenderTree/mac/DumpRenderTree.mm index f70e26259..029b358a0 100644 --- a/Tools/DumpRenderTree/mac/DumpRenderTree.mm +++ b/Tools/DumpRenderTree/mac/DumpRenderTree.mm @@ -1186,7 +1186,6 @@ void dump() WTF::FastMallocStatistics mallocStats = WTF::fastMallocStatistics(); printf("DumpMalloc: %li\n", mallocStats.committedVMBytes); - printf("DumpJSHeap: %li\n", JSC::HeapStatistics::usedJSHeap()); if (resultData) { fwrite([resultData bytes], 1, [resultData length], stdout); |