- 05 Jan, 2010 5 commits
-
-
eric@webkit.org authored
Reviewed by Eric Seidel. Minor improvements to test-webkit-scripts, as suggested by an earlier review. https://bugs.webkit.org/show_bug.cgi?id=33125 * Scripts/test-webkit-scripts: - Used OptionParser class instead of getopt.getopt(). - Created main() method for __main__ block. - Enclosed functions in a class. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52790 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
cfleizach@apple.com authored
Add ARIA "Live Region" support https://bugs.webkit.org/show_bug.cgi?id=33117 * DumpRenderTree/mac/AccessibilityUIElementMac.mm: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52789 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@chromium.org authored
Reviewed by Eric Seidel. [Chromium] Expose more DOM methods to support LayoutTests https://bugs.webkit.org/show_bug.cgi?id=33185 * public/WebDocument.h: Adds documentElement method. * public/WebElement.h: Adds innerText method. * public/WebFrame.h: Adds renderTreeAsText and counterValueForElementById methods, and fixes a few whitespace issues. * src/WebDocument.cpp: (WebKit::WebDocument::documentElement): * src/WebElement.cpp: (WebKit::WebElement::innerText): * src/WebFrameImpl.cpp: (WebKit::WebFrameImpl::clearName): (WebKit::WebFrameImpl::renderTreeAsText): (WebKit::WebFrameImpl::counterValueForElementById): * src/WebFrameImpl.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52788 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@chromium.org authored
Fix Chromium build bustage. * src/WebAnimationControllerImpl.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52787 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
cfleizach@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=33117 Reviewed by Darin Adler. WebCore: Tests: platform/mac/accessibility/aria-liveregions-attributes.html platform/mac/accessibility/aria-liveregions-notifications.html * accessibility/AXObjectCache.cpp: (WebCore::AXObjectCache::contentChanged): * accessibility/AXObjectCache.h: (WebCore::AXObjectCache::): * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::isChildOfARIALiveRegion): (WebCore::AccessibilityObject::supportsARIALiveRegion): * accessibility/AccessibilityObject.h: (WebCore::AccessibilityObject::contentChanged): (WebCore::AccessibilityObject::ariaLiveRegionStatus): (WebCore::AccessibilityObject::ariaLiveRegionRelevant): (WebCore::AccessibilityObject::ariaLiveRegionAtomic): (WebCore::AccessibilityObject::ariaLiveRegionBusy): * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::elementAttributeValue): (WebCore::AccessibilityRenderObject::contentChanged): (WebCore::AccessibilityRenderObject::childrenChanged): (WebCore::AccessibilityRenderObject::ariaLiveRegionStatus): (WebCore::AccessibilityRenderObject::ariaLiveRegionRelevant): (WebCore::AccessibilityRenderObject::ariaLiveRegionAtomic): (WebCore::AccessibilityRenderObject::ariaLiveRegionBusy): * accessibility/AccessibilityRenderObject.h: (WebCore::AccessibilityRenderObject::areChildrenDirty): * accessibility/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::postPlatformNotification): * accessibility/mac/AccessibilityObjectWrapper.h: * accessibility/mac/AccessibilityObjectWrapper.mm: (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]): (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): (-[AccessibilityObjectWrapper accessibilitySetPostedNotificationCallback:]): (-[AccessibilityObjectWrapper accessibilityPostedNotification:]): * dom/Element.cpp: (WebCore::Element::updateAfterAttributeChanged): * html/HTMLAttributeNames.in: * rendering/RenderText.cpp: (WebCore::RenderText::setText): WebKitTools: * DumpRenderTree/AccessibilityUIElement.cpp: (indexOfChildCallback): (boolAttributeValueCallback): (stringAttributeValueCallback): (addNotificationListenerCallback): (AccessibilityUIElement::getJSClass): * DumpRenderTree/AccessibilityUIElement.h: * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp: (AccessibilityUIElement::indexOfChild): (AccessibilityUIElement::stringAttributeValue): (AccessibilityUIElement::boolAttributeValue): (AccessibilityUIElement::addNotificationListener): * DumpRenderTree/mac/AccessibilityUIElementMac.mm: (AccessibilityUIElement::indexOfChild): (AccessibilityUIElement::stringAttributeValue): (AccessibilityUIElement::boolAttributeValue): (_accessibilityNotificationCallback): (AccessibilityUIElement::addNotificationListener): * DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::indexOfChild): (AccessibilityUIElement::stringAttributeValue): (AccessibilityUIElement::boolAttributeValue): (AccessibilityUIElement::addNotificationListener): LayoutTests: * accessibility/aria-activedescendant-crash.html: * platform/mac/accessibility/aria-liveregions-attributes-expected.txt: Added. * platform/mac/accessibility/aria-liveregions-attributes.html: Added. * platform/mac/accessibility/aria-liveregions-notifications-expected.txt: Added. * platform/mac/accessibility/aria-liveregions-notifications.html: Added. * platform/mac/accessibility/aria-menu-role-descriptions.html: * platform/mac/accessibility/slider-supports-actions.html: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52786 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 04 Jan, 2010 35 commits
-
-
eric@webkit.org authored
Reviewed by Adam Barth. bugzilla-tool rollout should require a reason https://bugs.webkit.org/show_bug.cgi?id=30810 * Scripts/webkitpy/changelogs.py: Add support for a reason, add auto-wrapping logic. * Scripts/webkitpy/changelogs_unittest.py: Test reason support. * Scripts/webkitpy/commands/download.py: rollout now requires a reason, remove unused BUGID argument * Scripts/webkitpy/commands/download_unittest.py: pass required reason * Scripts/webkitpy/steps/preparechangelogforrevert.py: pass reason to update_for_revert git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52785 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
abarth@webkit.org authored
Reviewed by Adam Barth. Test for https://bugs.webkit.org/show_bug.cgi?id=29820 Adopt a more conservative approach for loading CSS cross-origin. * http/tests/security/cross-origin-css.html: Added. * http/tests/security/cross-origin-css-expected.txt: Added. * http/tests/security/cross-origin-css-in-xml.xml: Added. * http/tests/security/cross-origin-css-in-xml-expected.txt: Added. * http/tests/security/resources/xorigincss1.css: Added. * http/tests/security/resources/xorigincss2.css: Added. * http/tests/security/resources/xorigincss1.html: Added. * http/tests/security/resources/xorigincss2.html: Added. * http/tests/security/resources/xorigincss3.html: Added. * http/tests/security/resources/xorigincss4.html: Added. * http/tests/security/resources/xorigincss5.html: Added. * http/tests/security/resources/xorigincss6.html: Added. 2010-01-04 Chris Evans <cevans@chromium.org> Reviewed by Adam Barth. Adopt a more conservative approach for loading CSS cross-origin. When loading CSS cross-origin, it must be start with valid CSS if the MIME type is broken. https://bugs.webkit.org/show_bug.cgi?id=29820 Test: http/tests/security/cross-origin-css.html Test: http/tests/security/cross-origin-css-in-xml.xml * html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::setCSSStyleSheet): Enforce stricter load requirements for cross-origin loads. * css/CSSImportRule.cpp: (WebCore::CSSImportRule::setCSSStyleSheet): Enforce stricter load requirements for cross-origin loads. * css/CSSStyleSheet.h: * css/CSSStyleSheet.cpp: * css/CSSParser.cpp: * css/CSSGrammar.y: * css/CSSParser.h: Add ability to tell whether the CSS parse started with a syntactically valid CSS rule. * loader/CachedCSSStyleSheet.h: * loader/CachedCSSStyleSheet.cpp: (WebCore::CachedCSSStyleSheet::sheetText): Add ability to return whether the MIME type was acceptable for CSS. (WebCore::CachedCSSStyleSheet::canUseSheet): If requested, return whether the MIME type was valid or not. * dom/ProcessingInstruction.cpp (WebCore::ProcessingInstruction::setCSSStyleSheet): Make use of strict mode explicit and add comment. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52784 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
rdar://problem/6655695mitz@apple.com authored
<rdar://problem/7397558> REGRESSION: AXImages inside of AXLink cause AXLink to have wrong bounds Reviewed by Simon Fraser. WebCore: Test: accessibility/dimensions-include-descendants.html * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::boundingBoxRect): Use absoluteFocusRingQuads() for non-text renderers. The focus ring encompasses descendants, which is what we want for the accessibility indicator. * rendering/RenderObject.cpp: (WebCore::RenderObject::absoluteFocusRingQuads): Added. * rendering/RenderObject.h: LayoutTests: * accessibility/dimensions-include-descendants-expected.txt: Added. * accessibility/dimensions-include-descendants.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52783 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
ojan@chromium.org authored
Reviewed by Dan Bernstein. Remove unnecessary division by a constant in SimpleFontDataMac.mm. https://bugs.webkit.org/show_bug.cgi?id=33189 This was added in http://trac.webkit.org/changeset/8104 and seems like it was just there to match the previously private function which we no longer use. No new tests. No change in behavior. * platform/graphics/mac/SimpleFontDataMac.mm: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52782 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
jhoneycutt@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=33192 Reviewed by Sam Weinig. WebKit/win: * AccessibleBase.cpp: (MSAARole): Map WebCore::PopUpButtonRole to MSAA's ROLE_SYSTEM_COMBOBOX. LayoutTests: * platform/win/accessibility/select-element-role-expected.txt: Added. * platform/win/accessibility/select-element-role.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52781 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
kov@webkit.org authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52780 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
jhoneycutt@apple.com authored
* accessibility/AXObjectCache.h: (WebCore::AXObjectCache::postNotification): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52779 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=32882 Reviewed by Maciej Stachowiak. Covered by existing tests along with the new assertions. * dom/Document.cpp: (WebCore::Document::recalcStyle): Make sure that m_inStyleRecalc is already false by the time post-attach callbacks are done so that layout triggered inside those callbacks can work properly. * editing/SelectionController.cpp: (WebCore::SelectionController::layout): Added code to trigger a layout when it's needed. (WebCore::SelectionController::recomputeCaretRect): Removed unneeded code to do nothing when FrameView is 0. Added an assertion that layout is not needed at the time the function is called. (WebCore::SelectionController::invalidateCaretRect): Added code to trigger a layout when it's needed. (WebCore::SelectionController::paintCaret): Added an assertion that layout is not needed at the time the function is called. * html/HTMLFormControlElement.cpp: (WebCore::shouldAutofocus): Added. Helper function that expresses the rule for which form control elements should auto-focus. (WebCore::focusPostAttach): Added. Called post-attach to focus an element if we discover it should be focused during attach. (WebCore::HTMLFormControlElement::attach): Refactored code for which elements need auto-focus into a separate function. Instead of focusing right away, use the focusPostAttach function to focus after attach is done. Also added calls to suspendPostAttachCallbacks and resumePostAttachCallbacks so post-attach callbacks happen late enough. Before, they could run inside the base attach function. * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::attach): Added calls to suspendPostAttachCallbacks and resumePostAttachCallbacks so post-attach callbacks happen late enough * page/Frame.cpp: (WebCore::Frame::revealSelection): Added code to trigger a layout when it's needed. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52778 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
barraclough@apple.com authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52777 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
https://bugs.webkit.org/show_bug.cgi?id=33163barraclough@apple.com authored
Add string hashing functions to WTF. Use WTF's string hashing functions from UStringImpl. Reviewed by Sam Weinig, additional coding by Mark Rowe. * GNUmakefile.am: * JavaScriptCore.exp: * JavaScriptCore.gypi: * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: * JavaScriptCore.xcodeproj/project.pbxproj: * runtime/UStringImpl.cpp: * runtime/UStringImpl.h: (JSC::UStringImpl::computeHash): * wtf/HashFunctions.h: * wtf/StringHashFunctions.h: Added. (WTF::stringHash): JavaScriptGlue: Add a forwarding header so that StringHashFunctions.h can be found. Reviewed by Sam Weinig. * ForwardingHeaders/wtf/StringHashFunctions.h: Added. WebCore: https://bugs.webkit.org/show_bug.cgi?id=33163 Use WTF's string hashing functions from StringImpl. Patch by Mark Rowe <mrowe@apple.com> on 2010-01-04 Reviewed by Sam Weinig. * ForwardingHeaders/wtf/StringHashFunctions.h: Added. * platform/text/StringHash.h: * platform/text/StringImpl.h: (WebCore::StringImpl::computeHash): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52776 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
eric@webkit.org authored
Reviewed by Darin Fisher. Adding WebAnimationController to chromium's WebKit API. https://bugs.webkit.org/show_bug.cgi?id=32870 * WebKit.gyp: * public/WebAnimationController.h: Added. (WebKit::WebAnimationController::~WebAnimationController): * public/WebFrame.h: * src/WebAnimationControllerImpl.cpp: Added. (WebKit::WebAnimationControllerImpl::WebAnimationControllerImpl): (WebKit::WebAnimationControllerImpl::pauseAnimationAtTime): (WebKit::WebAnimationControllerImpl::pauseTransitionAtTime): (WebKit::WebAnimationControllerImpl::numberOfActiveAnimations): * src/WebAnimationControllerImpl.h: Added. (WebKit::WebAnimationControllerImpl::~WebAnimationControllerImpl): * src/WebFrameImpl.cpp: (WebKit::WebFrameImpl::animationController): (WebKit::WebFrameImpl::WebFrameImpl): * src/WebFrameImpl.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52775 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
eric@webkit.org authored
Reviewed by Darin Fisher Adding more DOM API methods. They are needed for the upcoming translate feature. * public/WebElement.h: * public/WebNode.h: * src/WebElement.cpp: (WebKit::WebElement::tagName): (WebKit::WebElement::setAttribute): * src/WebNode.cpp: (WebKit::WebNode::setNodeValue): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52774 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
jhoneycutt@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=33088 <rdar://problem/7332364> Reviewed by Darin Adler. WebCore: * accessibility/AXObjectCache.cpp: (WebCore::AXObjectCache::postNotification): If the post type is async, follow the old code path; otherwise, call postPlatformNotification(). * accessibility/AXObjectCache.h: (WebCore::AXObjectCache::): Added a new accessibility notification, AXMenuListValueChanged. Added a new parameter to postNotification() to specify whether the post should be synchronous or asynchronous. * accessibility/win/AXObjectCacheWin.cpp: (WebCore::AXObjectCache::postPlatformNotification): If the WebCore notification is AXMenuListValueChanged, broadcast an EVENT_OBJECT_VALUECHANGE event. * dom/SelectElement.cpp: (WebCore::SelectElement::setSelectedIndex): When the selected index of a RenderMenuList is changed, call RenderMenuList::didSetSelectedIndex(). * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::RenderMenuList): Initialize new member (WebCore::RenderMenuList::didSetSelectedIndex): If the selected index has changed, post AXMenuListValueChanged to the object synchronously. * rendering/RenderMenuList.h: Declare didSetSelectedIndex(), and add a member to hold the last selected index. WebKitTools: * DumpRenderTree/AccessibilityController.cpp: (logValueChangeEventsCallback): Start logging value change events. (AccessibilityController::getJSClass): Add a "logValueChangeEvents" to the AccessibilityController's JS class definition. (AccessibilityController::resetToConsistentState): Disable logging of value change events. * DumpRenderTree/AccessibilityController.h: Declare setLogValueChangeEvents(), and add a member variable for the value change event hook. * DumpRenderTree/gtk/AccessibilityControllerGtk.cpp: (AccessibilityController::setLogValueChangeEvents): Stubbed. * DumpRenderTree/mac/AccessibilityControllerMac.mm: (AccessibilityController::setLogValueChangeEvents): Stubbed. * DumpRenderTree/win/AccessibilityControllerWin.cpp: (AccessibilityController::AccessibilityController): Initialize new member var. (AccessibilityController::~AccessibilityController): Disable logging of value change events. (logEventProc): When we receive an EVENT_OBJECT_VALUECHANGE, log the name of the object and its value. (AccessibilityController::setLogValueChangeEvents): If disabling logging, unhook the event, and clear the event hook member var. Otherwise, query for the root element to enable accessibility, and hook EVENT_OBJECT_VALUECHANGE. LayoutTests: * platform/win/accessibility/select-element-valuechange-event-expected.txt: Added. * platform/win/accessibility/select-element-valuechange-event.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52773 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
Reviewed by Sam Weinig. Test: fast/dom/Window/BarInfo-after-frame-removed.html * page/BarInfo.cpp: (WebCore::BarInfo::visible): Added null check. A few other cleanups. LayoutTests: Added test for use of BarInfo object after a frame is no longer associated with a web page. Reviewed by Sam Weinig. * fast/dom/Window/BarInfo-after-frame-removed-expected.txt: Added. * fast/dom/Window/BarInfo-after-frame-removed.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52772 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
eric@webkit.org authored
Reviewed by Eric Seidel. long_help for submit-patch https://bugs.webkit.org/show_bug.cgi?id=33184 * Scripts/webkitpy/commands/upload.py: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52771 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mrowe@apple.com authored
Delete an empty and unused JavaScript file. * WebCore.vcproj/WebCore.vcproj: * inspector/front-end/InspectorControllerStub.js: Removed. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52770 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
kevino@webkit.org authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52769 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mrowe@apple.com authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52768 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
ap@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=33181 The first letter is not removed properly from inline input hole * WebView.cpp: (WebView::onIMEEndComposition): If composition is ended before it was confirmed, cancel it. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52767 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
bweinstein@apple.com authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52766 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
barraclough@apple.com authored
Reviewed by NOBODY (more speculative build fix). git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52765 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
abarth@webkit.org authored
Reviewed by Eric Seidel. commit-queue can wrongly reject patches if the buildbots are behind https://bugs.webkit.org/show_bug.cgi?id=30098 Check to make sure we can currently build and test before trying to land a patch. * Scripts/webkitpy/commands/queues.py: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52764 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
dimich@chromium.org authored
* wtf/Platform.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52763 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
barraclough@apple.com authored
Add an 'isIdentifier' to UStringImpl, use this where appropriate (where previously 'identifierTable' was being tested). * API/JSClassRef.cpp: (OpaqueJSClass::~OpaqueJSClass): (OpaqueJSClassContextData::OpaqueJSClassContextData): * runtime/Identifier.cpp: (JSC::Identifier::addSlowCase): * runtime/Identifier.h: (JSC::Identifier::add): * runtime/PropertyNameArray.cpp: (JSC::PropertyNameArray::add): * runtime/UStringImpl.h: (JSC::UStringImpl::isIdentifier): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52762 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
barraclough@apple.com authored
Reviewed by NOBODY build fix for DRT, fix incorrect style include. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52761 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
barraclough@apple.com authored
Reviewed by NOBODY Windows build fix. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52760 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mitz@apple.com authored
* page/FrameView.cpp: (WebCore::FrameView::layout): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52759 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
https://bugs.webkit.org/show_bug.cgi?id=33163barraclough@apple.com authored
Add string hashing functions to WTF. Use WTF's string hashing functions from UStringImpl. Reviewed by Sam Weinig. * JavaScriptCore.exp: * runtime/UStringImpl.cpp: * runtime/UStringImpl.h: (JSC::UStringImpl::computeHash): * wtf/HashFunctions.h: (WTF::stringHash): WebCore: https://bugs.webkit.org/show_bug.cgi?id=33163 Use WTF's string hashing functions from StringImpl. Reviewed by Sam Weinig. * platform/text/StringImpl.h: (WebCore::StringImpl::computeHash): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52758 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
simon.fraser@apple.com authored
Reviewed by Dan Bernstein. Repaint issues in text input under a scale transform https://bugs.webkit.org/show_bug.cgi?id=32086 When doing a subtree layout we have to look up the container chain to see if there are any properties, such as transforms or reflections, that mean that we are unable to use layoutState. Test: fast/repaint/subtree-layoutstate-transform.html * page/FrameView.cpp: (WebCore::FrameView::layout): Call canUseLayoutStateForSubtree() to determine whether it's OK to use layoutState. * rendering/RenderView.h: * rendering/RenderView.cpp: (WebCore::RenderView::canUseLayoutStateForSubtree): New method that reports whether it's OK to use layoutState when doing a subtree layout from the given root. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52757 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=32842 rdar://problem/7449974 Reviewed by Dan Bernstein. Test: fast/forms/selection-layout-reentry-strange-case.html Move the selection display update process done in the selectionLayoutChanged function into the layout timer instead of doing it immediately when selection changes occur. * dom/Document.cpp: (WebCore::Document::updateLayout): Changed this to use the definition of needsLayout from FrameView rather than rolling its own. * editing/SelectionController.cpp: (WebCore::SelectionController::SelectionController): Initialize m_needsDisplayUpdate to false. (WebCore::SelectionController::setSelection): Call the new setNeedsDisplayUpdate function instead of the old badly named Frame::selectionLayoutChanged function. (WebCore::SelectionController::setNeedsDisplayUpdate): Set m_needsDisplayUpdate. If it is just becoming true, then call FrameView::scheduleRelayout. * editing/SelectionController.h: Added setNeedsDisplayUpdate, needsDisplayUpdate, and m_needsDisplayUpdate. * page/Frame.cpp: (WebCore::Frame::setCaretVisible): Call setNeedsDisplayUpdate. (WebCore::Frame::selectionLayoutChanged): Call setNeedsDisplayUpdate to set it to false, since this is the function that performs "selection display update". Later I want to rename this function. Also added a global reentrancy check since that's the easiest way I could think of to prevent infinite recursion in the case where recomputeCaretRect ends up triggering a layout. As a side effect, fixed theoretical problems in TEXT_CARET builds by improving the ifdef. (WebCore::Frame::caretBlinkTimerFired): Loosen assertions a bit. Later we might want to decouple caret rect from caret state a bit more and add these assertions back. (WebCore::Frame::selectionBounds): Call Document::updateLayout. This function is for external clients and they do not currently do anything to make sure layout is up to date. * page/FrameView.cpp: (WebCore::FrameView::needsLayout): Add a new clause, since we need a call to layout if needsDisplayUpdate is true. LayoutTests: Reentrancy problem with selection in some edge cases. https://bugs.webkit.org/show_bug.cgi?id=32842 rdar://problem/7449974 Reviewed by Dan Bernstein. * fast/forms/selection-layout-reentry-strange-case-expected.txt: Added. * fast/forms/selection-layout-reentry-strange-case.html: Added. * platform/mac/accessibility/frame-with-title-expected.txt: Updated since the number of layouts is now different. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52756 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
ap@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=33161 Assertion failure in WebView when using Chinese Simplified IME * WebView.cpp: (WebView::onIMERequestCharPosition): Changed the assertion into release mode check. We can't make assertions about arguments passed from outside WebKit. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52755 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
ap@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=33157 Implement TextInput logging channel on Windows * WebKitLogging.cpp: (WebKitInitializeLoggingChannelsIfNecessary): * WebKitLogging.h: Added a TextInput channel in place of unused Network one. * WebView.cpp: (WebView::WebViewWndProc): Changed onIMERequest to return result directly. We never forward it to DefWindowProc, so there is no need to return an unused boolean result for "handled". (WebView::onIMEStartComposition): Added logging. (imeCompositionArgumentNames): A helper function for detailed logging in onIMEComposition. (imeNotificationName): A helper function for detailed logging in onIMENotify. (imeRequestName): A helper function for detailed logging in onIMERequest. (WebView::onIMEComposition): Added logging. (WebView::onIMEEndComposition): Ditto. (WebView::onIMEChar): Ditto. (WebView::onIMENotify): Ditto. (WebView::onIMERequestCharPosition): Changed to return result directly. (WebView::onIMERequestReconvertString): Ditto. (WebView::onIMERequest): Changed to return result directly. Added logging. (WebView::onIMESelect): Added logging. (WebView::onIMESetContext): Added logging. * WebView.h: onIMERequest functions now return result directly. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52754 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
We currently only have tests for a handful of bugs regarding WebView destruction, but more tests can easily be added later. Eventually we'll run these tests as part of run-webkit-tests. Fixes <http://webkit.org/b/33167>. Reviewed by Sam Weinig. WebKit/win: * WebKit.vcproj/WebKit.sln: Added WebKitAPITest.vcproj. It builds just after DumpRenderTree.vcproj. WebKitTools: * WebKitAPITest/HostWindow.cpp: Added. (WebKitAPITest::HostWindow::HostWindow): Initialize m_window. (WebKitAPITest::HostWindow::~HostWindow): Destroy our window if needed. (WebKitAPITest::HostWindow::initialize): Create our window. (WebKitAPITest::HostWindow::clientRect): Return our window's client rect. (WebKitAPITest::HostWindow::registerWindowClass): Does what it says. (WebKitAPITest::HostWindow::wndProc): Just call through to DefWindowProcW. * WebKitAPITest/HostWindow.h: Added. (WebKitAPITest::HostWindow::window): Simple getter. * WebKitAPITest/Test.h: Added. This file defines some macros useful for writing tests. * WebKitAPITest/TestsController.cpp: Added. (WebKitAPITest::TestsController::TestsController): Initialize our members. (WebKitAPITest::TestsController::shared): Return the shared instance. (WebKitAPITest::TestsController::runAllTests): Run a message pump until a WM_QUIT message is received, then return whether all tests succeeded. (WebKitAPITest::TestsController::addTest): Add the test to m_tests and start running tests soon. (WebKitAPITest::TestsController::testFailed): Record the failure and print a message about it to stdout. (WebKitAPITest::TestsController::runNextTest): If we don't have any tests to run, post a WM_QUIT message to stop the message pump. Otherwise, run the test and print whether it passed, then schedule the next test. (WebKitAPITest::TestsController::runNextTestSoon): Set a 0-delay timer to run the next test. (WebKitAPITest::TestsController::registerWindowClass): Does what it says. (WebKitAPITest::TestsController::wndProc): If the runNextTestTimer fired, call runNextTest(). Pass everything else through to DefWindowProcW. * WebKitAPITest/TestsController.h: Added. * WebKitAPITest/WebKitAPITest.vcproj: Added. * WebKitAPITest/WebKitAPITestCommon.vsprops: Added. * WebKitAPITest/main.cpp: Added. (main): (Mostly) just calls TestsController::runAllTests. * WebKitAPITest/tests/WebViewDestruction.cpp: Added. (WebKitAPITest::WebKitCreateInstance): Helper function template to call through to the real WebKitCreateInstance. (WebKitAPITest::webViewCount): Helper function to call through to IWebKitStatistics::webViewCount. (WebKitAPITest::createWebView): Helper function to create a WebView and put it inside a HostWindow. (WebKitAPITest::runMessagePump): Helper function to run a message pump for a specified number of milliseconds, or until a WM_QUIT message is received. (WebKitAPITest::CloseWithoutDestroyWindow): Test for <http://webkit.org/b/32827>. (WebKitAPITest::MainFrameAfterClose): Test for <http://webkit.org/b/32868>. (WebKitAPITest::NoCloseOrDestroyWindow): Test for <http://webkit.org/b/33162>. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52753 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
bfulgham@webkit.org authored
checking validity of bitmap settings used to create the Windows Cairo contexts. https://bugs.webkit.org/show_bug.cgi?id=33164. Reviewed by Adam Roben. * platform/graphics/win/GraphicsContextCairoWin.cpp: (WebCore::createCairoContextWithHDC): Check validity of selected OBJ_BITMAP retrieved, and only create 32-bit context when a valid bitmap is provided. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52752 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
barraclough@apple.com authored
Refactor JSC API entry/exit to use RAII instead of copy/pasting code. Make it easier to change set of actions taken when passing across the API boundary. Reviewed by Sam "Shimmey Shimmey" Weinig. * API/APIShims.h: Added. (JSC::APIEntryShimWithoutLock::APIEntryShimWithoutLock): (JSC::APIEntryShimWithoutLock::~APIEntryShimWithoutLock): (JSC::APIEntryShim::APIEntryShim): (JSC::APICallbackShim::APICallbackShim): (JSC::APICallbackShim::~APICallbackShim): * API/JSBase.cpp: (JSEvaluateScript): (JSCheckScriptSyntax): (JSGarbageCollect): (JSReportExtraMemoryCost): * API/JSCallbackConstructor.cpp: (JSC::constructJSCallback): * API/JSCallbackFunction.cpp: (JSC::JSCallbackFunction::call): * API/JSCallbackObjectFunctions.h: (JSC::::init): (JSC::::getOwnPropertySlot): (JSC::::put): (JSC::::deleteProperty): (JSC::::construct): (JSC::::hasInstance): (JSC::::call): (JSC::::getOwnPropertyNames): (JSC::::toNumber): (JSC::::toString): (JSC::::staticValueGetter): (JSC::::callbackGetter): * API/JSContextRef.cpp: * API/JSObjectRef.cpp: (JSObjectMake): (JSObjectMakeFunctionWithCallback): (JSObjectMakeConstructor): (JSObjectMakeFunction): (JSObjectMakeArray): (JSObjectMakeDate): (JSObjectMakeError): (JSObjectMakeRegExp): (JSObjectGetPrototype): (JSObjectSetPrototype): (JSObjectHasProperty): (JSObjectGetProperty): (JSObjectSetProperty): (JSObjectGetPropertyAtIndex): (JSObjectSetPropertyAtIndex): (JSObjectDeleteProperty): (JSObjectCallAsFunction): (JSObjectCallAsConstructor): (JSObjectCopyPropertyNames): (JSPropertyNameArrayRelease): (JSPropertyNameAccumulatorAddName): * API/JSValueRef.cpp: (JSValueGetType): (JSValueIsUndefined): (JSValueIsNull): (JSValueIsBoolean): (JSValueIsNumber): (JSValueIsString): (JSValueIsObject): (JSValueIsObjectOfClass): (JSValueIsEqual): (JSValueIsStrictEqual): (JSValueIsInstanceOfConstructor): (JSValueMakeUndefined): (JSValueMakeNull): (JSValueMakeBoolean): (JSValueMakeNumber): (JSValueMakeString): (JSValueToBoolean): (JSValueToNumber): (JSValueToStringCopy): (JSValueToObject): (JSValueProtect): (JSValueUnprotect): * JavaScriptCore.xcodeproj/project.pbxproj: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52751 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-