1 2011-10-12 Chris Fleizach <cfleizach@apple.com>
3 AX: CrashTracer: [USER] 296 crashes in WebProcess at com.apple.WebCore: WebCore::AccessibilityScrollbar::document const + 29
4 https://bugs.webkit.org/show_bug.cgi?id=69936
6 AX Scrollbars have a weak pointer to their parent. They need to become AccessibilityMockObjects, so that they can
7 participate in the detachFromParent() methods that happens when those parents go away.
8 Could not reproduce the crash, but the backtrace is unequivocal.
10 Reviewed by Darin Adler.
12 * accessibility/AccessibilityScrollView.cpp:
13 (WebCore::AccessibilityScrollView::removeChildScrollbar):
14 * accessibility/AccessibilityScrollbar.cpp:
15 (WebCore::AccessibilityScrollbar::AccessibilityScrollbar):
16 * accessibility/AccessibilityScrollbar.h:
17 (WebCore::AccessibilityScrollbar::scrollbar):
18 (WebCore::AccessibilityScrollbar::isAccessibilityScrollbar):
20 2011-10-12 David Hyatt <hyatt@apple.com>
22 https://bugs.webkit.org/show_bug.cgi?id=69950
24 REGRESSION: Printing broken because of the isWritingModeRoot addition for unsplittable
25 paginated content. Make sure not to include the RenderView when checking for writing mode
26 roots. We only care about children that differ from their parents.
28 Reviewed by Dimitri Glazkov.
30 * rendering/LayoutState.cpp:
31 (WebCore::LayoutState::LayoutState):
32 * rendering/RenderBlock.cpp:
33 (WebCore::RenderBlock::adjustForUnsplittableChild):
34 * rendering/RenderBox.cpp:
35 (WebCore::RenderBox::isUnsplittableForPagination):
36 * rendering/RenderBox.h:
38 2011-10-12 Anna Cavender <annacc@chromium.org>
40 Moving ScriptExecutionContext to the front of the argument list for
41 IDL constructors that use ConstructorWith=ScriptExecutionContext.
42 https://bugs.webkit.org/show_bug.cgi?id=69799
44 Reviewed by Adam Barth.
47 - http/tests/eventsource/* (for EventSource)
48 - fast/filesystem/* (for Worker)
50 * bindings/js/JSEventSourceCustom.cpp:
51 (WebCore::JSEventSourceConstructor::constructJSEventSource):
52 * bindings/js/JSWorkerCustom.cpp:
53 (WebCore::JSWorkerConstructor::constructJSWorker):
54 * bindings/scripts/CodeGeneratorV8.pm:
55 (GenerateConstructorCallback):
56 * bindings/scripts/test/V8/V8TestInterface.cpp:
57 (WebCore::V8TestInterface::constructorCallback):
58 * page/EventSource.cpp:
59 (WebCore::EventSource::create):
62 (WebCore::Worker::create):
65 2011-10-11 David Hyatt <hyatt@apple.com>
67 https://bugs.webkit.org/show_bug.cgi?id=69896
69 [CSS Regions] Make positioned blocks work with variable width regions.
71 Make positioned objects able to position and size independently in each region. This involves
72 lifting the restriction in renderBoxRegionInfo for positioned objects and passing in region
73 information to computeLogicalWidthForPositioned so that it can compute answers for a given
76 In order to make mixed writing modes work with positioned objects, this patch also takes some
77 baby steps towards fixing differing writing modes in paginated environments.
79 Reviewed by Sam Weinig.
81 Added many new tests in fast/regions.
83 * rendering/LayoutState.cpp:
84 (WebCore::LayoutState::LayoutState):
85 Disable pagination whenever differing writing modes are encountered. The block effectively becomes
86 unsplittable (as though it was an image).
88 * rendering/RenderBlock.cpp:
89 (WebCore::RenderBlock::layoutBlock):
90 Remove a FIXME that looks incorrect now.
92 (WebCore::RenderBlock::adjustPositionedBlock):
93 Patch static inline position caching to call a new method that unshifts the position to put it back
94 in the overall block's space rather than having it be per-region.
96 (WebCore::RenderBlock::layoutPositionedObjects):
97 Make sure to attempt to set a logicalTop for positioned objects before they lay out so that they
98 have a chance of paginating correctly the first time around. If for some reason the top estimate proves
99 to be incorrect, we lay out again. Technically this bug exists for multi-column and printing as well, but
100 for now just fixing it for regions.
102 (WebCore::RenderBlock::adjustForUnsplittableChild):
103 Add writing mode roots to the set of objects we consider to be unsplittable.
105 (WebCore::RenderBlock::setStaticInlinePositionForChild):
106 New helper function that handles shifting the inline static position back into the overall block's space
107 rather than leaving it in a translated region-specific space.
109 * rendering/RenderBlock.h:
110 (WebCore::RenderBlock::startOffsetForContent):
111 New helper function for computing the start offset when no regions are involved.
113 * rendering/RenderBlockLineLayout.cpp:
114 (WebCore::setStaticPositions):
115 (WebCore::RenderBlock::LineBreaker::nextLineBreak):
116 Patched to call the new helper function, setStaticInlinePositionForChild.
118 * rendering/RenderBox.cpp:
119 (WebCore::RenderBox::positionLineBox):
120 Patched to call the new helper function, setStaticInlinePositionForChild.
122 (WebCore::RenderBox::computeLogicalWidthInRegion):
123 Pass region information into the positioning logical width computation function.
125 (WebCore::RenderBox::renderBoxRegionInfo):
126 Remove the positioning restriction and properly compute shifting and left/right offsets for positioned
129 (WebCore::RenderBox::computeLogicalHeight):
130 Add code for perpendicular flows that just positions the object within the first region it is encountered
131 in. Since the object is unsplittable, this will work out. Should the object be so tall that it can't fit
132 in any region, then the resulting rendering will potentially be terrible, but the expectation is that authors should
133 avoid having perpendicular flows break across pages.
135 (WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
136 (WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
137 Patched to handle regions when they are passed in. Also makes sure that the pagination direction axis computation uses
138 the flow thread's first region when the flow thread is the positioned object's containing block.
140 (WebCore::computeInlineStaticDistance):
141 Patched to examine regions and to modify the static distance computation accordingly so that it is per-region.
143 (WebCore::RenderBox::computePositionedLogicalWidth):
144 Pass along the region information when computing the positioned logical width.
146 (WebCore::computeLogicalLeftPositionedOffset):
147 Handle the adjustment of the logical left offset for differing writing modes (in this case when the writing mode
148 is flipped relative to us).
150 (WebCore::RenderBox::computePositionedLogicalHeight):
151 Deal with perpendicular writing modes and make sure the object is placed properly using the first region it
154 (WebCore::computeLogicalTopPositionedOffset):
155 Remove code that is no longer needed.
157 (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
158 Patched to pass in 0 instead of a region since replaced elements aren't handled yet.
160 * rendering/RenderBox.h:
161 Changing the computePositionedLogicalWidth method to take region information.
163 * rendering/RenderDeprecatedFlexibleBox.cpp:
164 (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
165 (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
166 Didn't bother fixing deprecated flexible box, and the new flexbox still can't handle positioned objects. When it does,
167 it will use the new method. Put in some FIXMEs to help the flexbox coders see the issue when they port the code over
170 * rendering/RenderLayer.h:
171 (WebCore::RenderLayer::staticInlinePosition):
172 (WebCore::RenderLayer::staticBlockPosition):
173 (WebCore::RenderLayer::setStaticInlinePosition):
174 (WebCore::RenderLayer::setStaticBlockPosition):
175 Patched to take LayoutUnits instead of ints.
177 2011-10-12 Nate Chapin <japhet@chromium.org>
179 Remove logging to determine how null v8::Contexts are happening,
180 and check the return value of V8DOMWindowShell::initContextIfNeeded()
181 before using the context it initialized.
182 https://bugs.webkit.org/show_bug.cgi?id=68099
184 Reviewed by Adam Barth.
186 No new tests, the only symptom is a crash without a known repro.
188 * bindings/v8/ScriptController.cpp:
189 * bindings/v8/V8DOMWindowShell.cpp:
190 (WebCore::V8DOMWindowShell::initContextIfNeeded): Return true
191 if a context already existed.
192 (WebCore::V8DOMWindowShell::namedItemAdded): Remove logging.
193 * bindings/v8/V8Proxy.cpp:
195 2011-10-06 Robert Hogan <robert@webkit.org>
197 CSS 2.1 failure: border-conflict-style-079
198 https://bugs.webkit.org/show_bug.cgi?id=69551
200 Reviewed by Antonio Gomes.
202 * css/CSSValueKeywords.in: ridge and outset were the wrong way round
203 * rendering/style/RenderStyleConstants.h: ditto
206 2011-10-12 Jian Li <jianli@chromium.org>
208 Support passing optional filename when FormData.append() is used to
210 https://bugs.webkit.org/show_bug.cgi?id=69885
212 Reviewed by David Levin.
214 Covered by existing test with new test case added:
215 http/tests/local/formdata/send-form-data-with-sliced-file.html
217 * bindings/js/JSDOMFormDataCustom.cpp:
218 (WebCore::JSDOMFormData::append):
219 * bindings/v8/custom/V8DOMFormDataCustom.cpp:
220 (WebCore::V8DOMFormData::appendCallback):
221 * html/DOMFormData.cpp:
222 (WebCore::DOMFormData::append):
223 * html/DOMFormData.h:
224 * html/DOMFormData.idl:
225 * html/FormDataList.cpp:
226 (WebCore::FormDataList::appendBlob):
227 * html/FormDataList.h:
228 (WebCore::FormDataList::Item::Item):
229 (WebCore::FormDataList::Item::filename):
230 (WebCore::FormDataList::appendBlob):
231 * platform/network/FormData.cpp:
232 (WebCore::FormData::appendKeyValuePairItems):
234 2011-10-12 Sergey Glazunov <serg.glazunov@gmail.com>
236 ScriptController::executeIfJavaScriptURL gets confused by synchronous frame loads
237 https://bugs.webkit.org/show_bug.cgi?id=69777
239 Reviewed by Adam Barth.
241 Test: http/tests/security/xss-DENIED-synchronous-frame-load-in-javascript-url.html
243 * bindings/ScriptControllerBase.cpp:
244 (WebCore::ScriptController::executeIfJavaScriptURL):
245 * loader/DocumentWriter.cpp:
246 (WebCore::DocumentWriter::replaceDocument):
247 (WebCore::DocumentWriter::begin):
248 * loader/DocumentWriter.h:
250 2011-10-12 Vsevolod Vlasov <vsevik@chromium.org>
252 Web Inspector: Searching in multiple scripts in the scripts tab
253 https://bugs.webkit.org/show_bug.cgi?id=38807
255 Reviewed by Pavel Feldman.
257 Added support for advanced search capabilities in inspector by means
258 of showing the new SearchView in Drawer. Advanced search is activated
259 with Ctrl+Shift+F (Cmd+Shift+F) shortcut.
261 * English.lproj/localizedStrings.js:
263 * WebCore.vcproj/WebCore.vcproj:
264 * inspector/compile-front-end.sh:
265 * inspector/front-end/AdvancedSearchController.js: Added.
266 * inspector/front-end/DebuggerPresentationModel.js:
267 (WebInspector.DebuggerPresentationModel.prototype.uiSourceCodes):
268 * inspector/front-end/ScriptsPanel.js:
269 * inspector/front-end/ScriptsSearchScope.js: Added.
270 * inspector/front-end/UISourceCode.js:
271 (WebInspector.UISourceCode.prototype.searchInContent):
272 * inspector/front-end/WebKit.qrc:
273 * inspector/front-end/externs.js:
274 (WebInspector.showViewInDrawer):
275 * inspector/front-end/inspector.css:
277 (.search-view .search-panel):
278 (.search-view .search-results):
279 (#search-results-pane-file-based .search-result):
280 (#search-results-pane-file-based .search-result:first-child):
281 (#search-results-pane-file-based .search-result .search-result-file-name):
282 (#search-results-pane-file-based .search-result .search-result-matches-count):
283 (#search-results-pane-file-based .search-match):
284 (#search-results-pane-file-based .search-match .webkit-line-number.search-match-line-number):
285 (#search-results-pane-file-based .search-match:not(:hover) .webkit-line-number.search-match-line-number):
286 (#search-results-pane-file-based .search-match:hover):
287 (#search-results-pane-file-based .search-match .highlighted-match):
288 (#search-results-pane-file-based a):
289 (#search-results-pane-file-based .search-match .search-match-content):
290 * inspector/front-end/inspector.html:
291 * inspector/front-end/inspector.js:
292 (WebInspector.documentKeyDown):
293 * inspector/front-end/utilities.js:
296 2011-10-12 Vsevolod Vlasov <vsevik@chromium.org>
298 Web Inspector: Fix Drawer to make it possible to show views other than Console.
299 https://bugs.webkit.org/show_bug.cgi?id=69831
301 Reviewed by Pavel Feldman.
303 Animation type extracted to distinguish between slow and normal
304 animation and immediate show/hide.
305 Implemented correct console toggle button behavior on showing views
306 other than console in Drawer.
307 View shown in Drawer is now shown in drawer-contents div with common
309 Removed unused "_safelyRemoveChildren" method from Drawer.
311 * inspector/front-end/ConsolePanel.js:
312 (WebInspector.ConsolePanel.prototype.show):
313 (WebInspector.ConsolePanel.prototype.hide):
314 * inspector/front-end/Drawer.js:
315 (WebInspector.Drawer):
316 (WebInspector.Drawer.prototype.show):
317 (WebInspector.Drawer.prototype.hide):
318 (WebInspector.Drawer.prototype._animationDuration):
319 * inspector/front-end/inspector.css:
320 (body.drawer-visible #drawer-contents):
321 * inspector/front-end/inspector.js:
322 (WebInspector._toggleConsoleButtonClicked):
323 (WebInspector._escPressed):
324 (WebInspector.showViewInDrawer):
325 (WebInspector.documentKeyDown):
327 2011-10-12 Yury Semikhatsky <yurys@chromium.org>
329 [v8] Use V8DOMWrapper::isWrapperOfType for determining global object type
330 https://bugs.webkit.org/show_bug.cgi?id=69923
332 Get rid of globalObjectPrototypeIsDOMWindow, use V8DOMWrapper::isWrapperOfType instead.
334 Reviewed by Pavel Feldman.
336 * bindings/v8/V8DOMWrapper.cpp:
337 (WebCore::V8DOMWrapper::instantiateV8Object):
338 (WebCore::V8DOMWrapper::getEventListener):
340 2011-10-12 Yury Semikhatsky <yurys@chromium.org>
342 [Chromium] Web Inspector: assertion failure when evaluating expression in worker inspector console
343 https://bugs.webkit.org/show_bug.cgi?id=69922
345 Check that the global object is a DOMWindow wrapper befor casting it to V8DOMWindow.
347 Reviewed by Pavel Feldman.
349 * bindings/v8/ScriptState.cpp:
350 (WebCore::ScriptState::domWindow):
352 2011-10-12 Yuta Kitamura <yutak@chromium.org>
354 WebSocket: Update WebSocket protocol to hybi-17
355 https://bugs.webkit.org/show_bug.cgi?id=69910
357 Reviewed by Kent Tamura.
359 Essential changes between hybi-10 and hybi-17 are:
360 - Sec-WebSocket-Origin header has been renamed to "Origin".
361 - Sec-WebSocket-Version header value has been bumped to 13.
363 No new tests are necessary. pywebsocket has already been updated to the latest version
364 which understands the new protocol. Tests under http/tests/websocket/ should keep
367 * websockets/WebSocketHandshake.cpp:
368 (WebCore::WebSocketHandshake::clientHandshakeMessage):
369 (WebCore::WebSocketHandshake::clientHandshakeRequest):
371 2011-10-11 Antti Koivisto <antti@apple.com>
373 Resolve regular and visited link style in a single pass
374 https://bugs.webkit.org/show_bug.cgi?id=69838
376 Reviewed by Darin Adler
378 We can simplify and speed up selector matching by removing the recursive matching done
379 to generate the style for the :visited pseudo selector. Both regular and visited link style
380 can be generated in a single pass through the style selector.
382 - Make SelectorChecker::checkSelector to return both :visited and :link matches for all links.
383 - For each selector statically determine and cache the link states it may match.
384 - When applying the matched style declarations, apply them to the right RenderStyle
385 (regular, visited, or both).
387 Statically determining which link state will be matched works since we only support :visited matching
388 based on the current element state (not ancestors or siblings).
390 A later patch will eliminate the separate RenderStyle for visited style completely and include the
391 few allowed properties to the regular RenderStyle.
393 * css/CSSStyleSelector.cpp:
394 (WebCore::RuleData::linkMatchType):
395 (WebCore::RuleSet::linkPseudoClassRules):
396 (WebCore::CSSStyleSelector::addMatchedDeclaration):
397 (WebCore::CSSStyleSelector::matchRules):
398 (WebCore::CSSStyleSelector::styleForElement):
399 (WebCore::CSSStyleSelector::pseudoStyleForElement):
400 (WebCore::CSSStyleSelector::updateFont):
401 (WebCore::CSSStyleSelector::checkSelector):
402 (WebCore::RuleData::RuleData):
403 (WebCore::RuleSet::addRule):
404 (WebCore::RuleSet::collectFeatures):
405 (WebCore::RuleSet::shrinkToFit):
406 (WebCore::CSSStyleSelector::applyDeclaration):
407 (WebCore::CSSStyleSelector::applyDeclarations):
408 (WebCore::CSSStyleSelector::applyProperty):
409 (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
410 * css/CSSStyleSelector.h:
411 (WebCore::CSSStyleSelector::MatchedStyleDeclaration::MatchedStyleDeclaration):
412 * css/SelectorChecker.cpp:
413 (WebCore::SelectorChecker::SelectorChecker):
414 (WebCore::SelectorChecker::checkSelector):
415 (WebCore::SelectorChecker::fastCheckRightmostSelector):
416 (WebCore::SelectorChecker::fastCheckSelector):
417 (WebCore::SelectorChecker::checkOneSelector):
418 (WebCore::SelectorChecker::commonPseudoClassSelectorMatches):
419 (WebCore::SelectorChecker::determineLinkMatchType):
420 * css/SelectorChecker.h:
421 * rendering/style/RenderStyle.cpp:
422 (WebCore::RenderStyle::addCachedPseudoStyle):
424 2011-10-12 Kent Tamura <tkent@chromium.org>
426 REGRESSION(r94836): An assertion fails in HTMLFormControlElement::isValidFormControlElement
427 when HTMLInputElement::setValue() is called while the element is focused.
428 https://bugs.webkit.org/show_bug.cgi?id=69909
430 Reviewed by Ryosuke Niwa.
432 setNeedsValidityCheck() should be called after the value update
433 and before any style recalculation. r94836 moved
434 setSelectionRange() call, and it recalculates the element style.
436 * html/HTMLInputElement.cpp:
437 (WebCore::HTMLInputElement::setValue): Move setNeedsValidityCheck() to setValueInternal().
438 (WebCore::HTMLInputElement::setValueInternal): Move setNeedsValidityCheck() from setValue().
440 2011-10-12 Kent Tamura <tkent@chromium.org>
442 Build fixes for r97238.
443 https://bugs.webkit.org/show_bug.cgi?id=69828
445 * GNUmakefile.list.am: Remove SelectElement.{cpp,h}.
446 * dom/DOMAllInOne.cpp: Remove SelectElement.cpp.
448 2011-10-12 Kent Tamura <tkent@chromium.org>
450 Move the content of SelectElementData into HTMLSelectElement, and remove SelectElement.{cpp,h}
451 https://bugs.webkit.org/show_bug.cgi?id=69828
453 Reviewed by Darin Adler.
455 - Move all of the data members of SelectElementData to
456 HTMLSelectElement, and their accessor functions are not needed
458 - Move SelectElementData::useMenuList() to HTMLSelectElement.
460 No new tests, just a refactoring.
462 * CMakeLists.txt: Remove SelectElement.cpp.
463 * WebCore.gypi: Remove SelectElement.{cpp,h}.
464 * WebCore.pro: ditto.
465 * WebCore.vcproj/WebCore.vcproj: ditto.
466 * WebCore.xcodeproj/project.pbxproj: ditto.
467 * dom/OptionElement.cpp: Remove a reference to SelectElement.h.
468 * dom/SelectElement.cpp: Removed.
469 * dom/SelectElement.h: Removed.
470 * html/HTMLSelectElement.cpp:
471 (WebCore::HTMLSelectElement::HTMLSelectElement):
472 Initializes the moved data members.
473 (WebCore::HTMLSelectElement::formControlType):
474 (WebCore::HTMLSelectElement::setSelectedIndexByUser):
475 (WebCore::HTMLSelectElement::activeSelectionStartListIndex):
476 (WebCore::HTMLSelectElement::activeSelectionEndListIndex):
477 (WebCore::HTMLSelectElement::parseMappedAttribute):
478 (WebCore::HTMLSelectElement::canSelectAll):
479 (WebCore::HTMLSelectElement::createRenderer):
480 (WebCore::HTMLSelectElement::setOption):
481 (WebCore::HTMLSelectElement::selectAll):
482 (WebCore::HTMLSelectElement::saveLastSelection):
483 (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
484 (WebCore::HTMLSelectElement::setActiveSelectionEndIndex):
485 (WebCore::HTMLSelectElement::updateListBoxSelection):
486 (WebCore::HTMLSelectElement::listBoxOnChange):
487 (WebCore::HTMLSelectElement::menuListOnChange):
488 (WebCore::HTMLSelectElement::scrollToSelection):
489 (WebCore::HTMLSelectElement::setOptionsChangedOnRenderer):
490 (WebCore::HTMLSelectElement::setRecalcListItems):
491 (WebCore::HTMLSelectElement::recalcListItemsInternal):
492 (WebCore::HTMLSelectElement::setSelectedIndexInternal):
493 (WebCore::HTMLSelectElement::dispatchFocusEvent):
494 (WebCore::HTMLSelectElement::dispatchBlurEvent):
495 (WebCore::HTMLSelectElement::parseMultipleAttribute):
496 (WebCore::HTMLSelectElement::reset):
497 (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
498 (WebCore::HTMLSelectElement::updateSelectedState):
499 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
500 (WebCore::HTMLSelectElement::defaultEventHandler):
501 (WebCore::HTMLSelectElement::typeAheadFind):
502 (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
503 * html/HTMLSelectElement.h:
504 (WebCore::HTMLSelectElement::size):
505 (WebCore::HTMLSelectElement::multiple):
506 (WebCore::HTMLSelectElement::usesMenuList):
508 2011-10-12 Ryosuke Niwa <rniwa@webkit.org>
510 Chromium Mac build fix after r97227.
512 * platform/chromium/ScrollbarThemeChromiumMac.mm:
513 (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
515 2011-10-11 Antoine Labour <piman@chromium.org>
517 Separate compositor client thread from webkit's main thread.
518 https://bugs.webkit.org/show_bug.cgi?id=69048
520 Reviewed by Darin Fisher.
522 Covered by compositing tests.
524 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
525 (WebCore::CCLayerTreeHost::CCLayerTreeHost):
526 * platform/graphics/chromium/cc/CCMainThread.cpp:
527 * platform/graphics/chromium/cc/CCMainThread.h:
528 * platform/graphics/chromium/cc/CCProxy.cpp:
529 (WebCore::CCProxy::isMainThread):
530 (WebCore::CCProxy::setMainThread):
531 (WebCore::CCProxy::CCProxy):
532 * platform/graphics/chromium/cc/CCProxy.h:
534 2011-10-11 Simon Fraser <simon.fraser@apple.com>
536 Fix Leopard and Snow Leopard builds, which don't use the scrollbar painter.
538 * platform/mac/ScrollAnimatorMac.mm:
540 2011-10-11 Simon Fraser <simon.fraser@apple.com>
542 Make custom scrollbar theme for use in DRT, to reduce pixel diffs between platforms
543 https://bugs.webkit.org/show_bug.cgi?id=68134
545 Reviewed by Darin Adler.
547 Use ScrollbarThemeMock when the setting to use mock scrollbars is enabled.
549 Make ScrollbarTheme::nativeTheme() private, and add a new static theme() method
550 that reads the setting, and returns the mock theme if set. All callers now use
551 theme() rther than nativeTheme(). Add the new ScrollbarTheme.cpp file to the build.
553 Fix scroll animator code for Mac and Chromium that was casting the ScrollbarTheme
554 without type-checking it to test whether it's the mock theme.
557 * GNUmakefile.list.am:
561 * WebCore.vcproj/WebCore.vcproj:
562 * WebCore.xcodeproj/project.pbxproj:
563 * html/shadow/TextControlInnerElements.cpp:
564 (WebCore::SpinButtonElement::startRepeatingTimer):
565 * platform/ScrollAnimatorWin.cpp:
566 (WebCore::ScrollAnimatorWin::scroll):
567 (WebCore::ScrollAnimatorWin::accelerationTime):
568 (WebCore::ScrollAnimatorWin::animateScroll):
569 * platform/ScrollView.cpp:
570 (WebCore::ScrollView::wheelEvent):
571 * platform/ScrollableArea.cpp:
572 (WebCore::ScrollableArea::setScrollbarOverlayStyle):
573 * platform/Scrollbar.cpp:
574 (WebCore::Scrollbar::maxOverlapBetweenPages):
575 (WebCore::Scrollbar::Scrollbar):
576 * platform/ScrollbarTheme.cpp: Copied from Source/WebCore/platform/mock/ScrollbarThemeMock.h.
577 (WebCore::ScrollbarTheme::theme):
578 * platform/ScrollbarTheme.h:
579 (WebCore::ScrollbarTheme::isMockTheme):
580 * platform/chromium/PopupListBox.cpp:
581 (WebCore::PopupListBox::layout):
582 * platform/chromium/ScrollAnimatorChromiumMac.mm:
583 (WebCore::chromiumScrollbarTheme):
584 (WebCore::ScrollAnimatorChromiumMac::didAddVerticalScrollbar):
585 (WebCore::ScrollAnimatorChromiumMac::willRemoveVerticalScrollbar):
586 (WebCore::ScrollAnimatorChromiumMac::didAddHorizontalScrollbar):
587 (WebCore::ScrollAnimatorChromiumMac::willRemoveHorizontalScrollbar):
588 (WebCore::ScrollAnimatorChromiumMac::updateScrollerStyle):
589 * platform/chromium/ScrollbarThemeChromiumMac.mm:
590 (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
591 (+[ScrollbarPrefsObserver behaviorPrefsChanged:]):
592 * platform/mac/ScrollAnimatorMac.mm:
593 (WebCore::macScrollbarTheme):
594 (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
595 (WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
596 (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
597 (WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):
598 (WebCore::ScrollAnimatorMac::updateScrollerStyle):
599 * platform/mac/ScrollbarThemeMac.mm:
600 (+[WebScrollbarPrefsObserver appearancePrefsChanged:]):
601 (+[WebScrollbarPrefsObserver behaviorPrefsChanged:]):
602 * platform/mock/ScrollbarThemeMock.h:
603 (WebCore::ScrollbarThemeMock::isMockTheme):
604 * platform/qt/RenderThemeQt.cpp:
605 (WebCore::RenderThemeQt::adjustInnerSpinButtonStyle):
606 * platform/win/PopupMenuWin.cpp:
607 (WebCore::PopupMenuWin::calculatePositionAndSize):
608 * rendering/RenderLayer.cpp:
609 (WebCore::cornerRect):
610 * rendering/RenderScrollbarPart.cpp:
611 (WebCore::calcScrollbarThicknessUsing):
612 * rendering/RenderScrollbarTheme.h:
613 (WebCore::RenderScrollbarTheme::scrollbarThickness):
614 (WebCore::RenderScrollbarTheme::buttonsPlacement):
615 (WebCore::RenderScrollbarTheme::shouldCenterOnThumb):
616 (WebCore::RenderScrollbarTheme::initialAutoscrollTimerDelay):
617 (WebCore::RenderScrollbarTheme::autoscrollTimerDelay):
618 (WebCore::RenderScrollbarTheme::registerScrollbar):
619 (WebCore::RenderScrollbarTheme::unregisterScrollbar):
620 * rendering/RenderTextControl.cpp:
621 (WebCore::RenderTextControl::scrollbarThickness):
622 * rendering/RenderThemeChromiumSkia.cpp:
623 (WebCore::RenderThemeChromiumSkia::menuListInternalPadding):
624 * rendering/RenderThemeChromiumWin.cpp:
625 (WebCore::RenderThemeChromiumWin::adjustInnerSpinButtonStyle):
627 2011-10-11 Kentaro Hara <haraken@chromium.org>
629 Implement a WebKitTransitionEvent constructor for JSC
630 https://bugs.webkit.org/show_bug.cgi?id=69829
632 Reviewed by Adam Barth.
634 There is no spec for the WebKitTransitionEvent constructor
635 since it is WebKit-specific. However, judging from the current
636 IDL of initWebKitTransitionEvent(), the constructor IDL
637 should be as follows.
639 [Constructor(DOMString type, optional WebKitTransitionEventInit eventInitDict)]
640 interface WebKitTransitionEvent : Event {
644 dictionary WebKitTransitionEventInit : EventInit {
645 DOMString propertyName;
649 Test: fast/events/constructors/webkit-transition-event-constructor.html
651 * bindings/generic/EventConstructors.h: Added a definition for the WebKitTransitionEvent constructor.
652 * bindings/js/JSEventConstructors.cpp: Added #includes for WebKitTransitionEvent.
653 * dom/WebKitTransitionEvent.cpp:
654 (WebCore::WebKitTransitionEventInit::WebKitTransitionEventInit):
655 (WebCore::WebKitTransitionEvent::WebKitTransitionEvent):
656 (WebCore::WebKitTransitionEvent::initWebKitTransitionEvent):
657 * dom/WebKitTransitionEvent.h: Added a definition for WebKitTransitionEventInit.
658 (WebCore::WebKitTransitionEvent::create):
659 (WebCore::WebKitTransitionEvent::isWebKitTransitionEvent):
660 * dom/WebKitTransitionEvent.idl: Makes WebKitTransitionEvent constructible.
662 2011-10-11 Sameer Patil <mkrp87@motorola.com>
664 :checked pseudo selector not matching selected option
665 https://bugs.webkit.org/show_bug.cgi?id=63192
667 Reviewed by Kent Tamura.
669 Test: fast/css/checked-pseudo-selector.html
671 Option element selected state need to be checked in checkOneSelector,
672 so that it can be considered as checked on querySelectorAll(':checked').
674 * css/SelectorChecker.cpp:
675 (WebCore::SelectorChecker::checkOneSelector):
677 2011-10-11 Ryuan Choi <ryuan.choi@samsung.com>
679 StorageAreaSync::sync needs a transaction for better performance.
680 https://bugs.webkit.org/show_bug.cgi?id=57694
682 Reviewed by Darin Adler.
684 For now, StorageAreaSync::sync execute SQLite operations for all items outside
686 However, SQLite operations outside a transaction are all atomic and thus
687 writes will block on I/O, which makes the process slow during heavy I/O.
688 This wrapped them with BEGIN TRANSACTION and END TRANSACTION for the better
691 No new tests required.
692 No functional changes if transaction doesn't fail.
693 And also, it is difficult to test the case of transaction fails.
695 * storage/StorageAreaSync.cpp:
696 (WebCore::StorageAreaSync::sync):
698 2011-10-11 Ojan Vafai <ojan@chromium.org>
700 margin-right is ignored with vertical writing mode
701 https://bugs.webkit.org/show_bug.cgi?id=69686
703 Reviewed by Darin Adler.
705 We need to use the parent's writing mode when grabbing
706 the margin start/end for the purposes of computing the parent's
709 Test: fast/writing-mode/margins.html
711 * rendering/RenderBlock.cpp:
712 (WebCore::RenderBlock::computeBlockPreferredLogicalWidths):
713 * rendering/RenderBlock.h:
715 2011-10-11 Sheriff Bot <webkit.review.bot@gmail.com>
717 Unreviewed, rolling out r97202, r97207, and r97215.
718 http://trac.webkit.org/changeset/97202
719 http://trac.webkit.org/changeset/97207
720 http://trac.webkit.org/changeset/97215
721 https://bugs.webkit.org/show_bug.cgi?id=69894
723 Broke builds (Requested by rniwa on #webkit).
725 * platform/PopupMenuClient.h:
726 * rendering/RenderMenuList.cpp:
727 (WebCore::RenderMenuList::showPopup):
728 * rendering/RenderMenuList.h:
729 * rendering/RenderObject.h:
730 * rendering/RenderTextControlSingleLine.cpp:
731 (WebCore::RenderTextControlSingleLine::showPopup):
732 * rendering/RenderTextControlSingleLine.h:
733 * testing/Internals.cpp:
734 * testing/Internals.h:
735 * testing/Internals.idl:
737 2011-10-11 Martin Robinson <mrobinson@igalia.com>
739 [Soup] ResourceHandleSoup does not handle encodedBlobData
740 https://bugs.webkit.org/show_bug.cgi?id=52092
742 Reviewed by Gustavo Noronha Silva.
744 Add support for sending encoded blob data during requests.
746 * platform/network/soup/ResourceHandleSoup.cpp:
747 (WebCore::addFileToSoupMessageBody): Added this helper.
748 (WebCore::blobIsOutOfDate): Ditto.
749 (WebCore::addEncodedBlobItemToSoupMessageBody): Ditto.
750 (WebCore::addEncodedBlobToSoupMessageBody): Ditto.
751 (WebCore::addFormElementsToSoupMessage): No longer flatten form data, as we
752 cannot do this in the case where the form data contains blobs. Now handle
754 (WebCore::loadResourceSynchronously): Add blob support for synchronous loading.
756 2011-10-11 Chris Rogers <crogers@google.com>
758 Heap buffer overflow in Webaudio FFTFrame::doFFT
759 https://bugs.webkit.org/show_bug.cgi?id=69447
761 Reviewed by Kenneth Russell.
763 No new tests. This only changes internal implementation details.
765 * platform/audio/HRTFKernel.cpp:
766 (WebCore::extractAverageGroupDelay):
767 * platform/audio/HRTFPanner.cpp:
768 (WebCore::HRTFPanner::fftSizeForSampleRate):
770 2011-10-11 Ryosuke Niwa <rniwa@webkit.org>
772 Second Qt minimum release build fix attempt after r97163.
774 * platform/graphics/texmap/TextureMapperNode.cpp:
775 (WebCore::TextureMapperNode::syncCompositingStateSelf):
777 2011-10-11 Ryosuke Niwa <rniwa@webkit.org>
779 Qt minimum release build fix attempt after r97163.
781 * platform/graphics/texmap/TextureMapperNode.cpp:
782 (WebCore::TextureMapperNode::syncCompositingStateSelf):
784 2011-10-11 Oliver Hunt <oliver@apple.com>
787 https://bugs.webkit.org/show_bug.cgi?id=69891
789 Reviewed by Darin Adler.
791 Rename CachedResourceClient::type to CachedResourceClient::resourceClientType
792 to avoid conflict in CSSImportRule.
794 * loader/cache/CachedCSSStyleSheet.cpp:
795 (WebCore::CachedCSSStyleSheet::didAddClient):
796 * loader/cache/CachedFont.cpp:
797 (WebCore::CachedFont::didAddClient):
798 * loader/cache/CachedFont.h:
799 (WebCore::CachedFontClient::resourceClientType):
800 * loader/cache/CachedImage.cpp:
801 (WebCore::CachedImage::didAddClient):
802 * loader/cache/CachedImage.h:
803 (WebCore::CachedImageClient::resourceClientType):
804 * loader/cache/CachedResourceClient.h:
805 (WebCore::CachedResourceClient::resourceClientType):
806 * loader/cache/CachedResourceClientWalker.h:
807 (WebCore::CachedResourceClientWalker::next):
808 * loader/cache/CachedStyleSheetClient.h:
809 (WebCore::CachedStyleSheetClient::resourceClientType):
810 * loader/cache/CachedXSLStyleSheet.cpp:
811 (WebCore::CachedXSLStyleSheet::didAddClient):
813 2011-10-11 Ryosuke Niwa <rniwa@webkit.org>
815 Dir attribute is converted into direction property when merging paragraphs
816 https://bugs.webkit.org/show_bug.cgi?id=69680
818 Reviewed by Enrica Casucci.
820 Don't include direction and unicode-bidi properties in the wrapping style.
822 Tests: editing/deleting/merge-paragraph-into-h1-with-dir-2.html
823 editing/deleting/merge-paragraph-into-h1-with-dir.html
825 * editing/EditingStyle.cpp:
826 (WebCore::EditingStyle::mergeInlineAndImplicitStyleOfElement): Skip unicode-bidi and direction properties.
827 (WebCore::EditingStyle::wrappingStyleForSerialization): Extracted from StyledMarkupAccumulator::serializeNodes.
828 * editing/EditingStyle.h:
829 * editing/markup.cpp:
830 (WebCore::StyledMarkupAccumulator::serializeNodes): Calls wrappingStyleForSerialization.
832 2011-10-11 Nico Weber <thakis@chromium.org>
834 [chromium] Let rule_binding use os.execvp() instead of subprocess.call() to spawn fewer processes.
835 https://bugs.webkit.org/show_bug.cgi?id=69589
837 Reviewed by Dirk Pranke.
839 When building with `make -j40`, all the binding rules are built en bloc. Since this script currently
840 uses subprocess.call(), that actually spawns 80 processes at once. OS X has a max process limit of
841 255 by default, so the build used to fail with
842 "open2: fork failed: Resource temporarily unavailable at ../bindings/scripts/preprocessor.pm line 60"
843 As a fix, use execvp() instead, which replaces the current process instead of spawning a new one.
845 * WebCore.gyp/scripts/rule_binding.py:
847 2011-10-11 Fady Samuel <fsamuel@chromium.org>
849 Towards making PopupMenuClient more testable
850 https://bugs.webkit.org/show_bug.cgi?id=69631
852 Reviewed by Simon Fraser.
854 Added some functions to window.internals to allow testing of parts of PopupMenuClient.
856 Test: fast/dom/popup-menu-client-test.html
858 * platform/PopupMenuClient.h:
859 * rendering/RenderMenuList.cpp:
860 (WebCore::RenderMenuList::showPopup):
861 (WebCore::RenderMenuList::boundingBoxRect):
862 * rendering/RenderMenuList.h:
863 (WebCore::RenderMenuList::RenderMenuList::isPopupMenuClient):
864 * rendering/RenderObject.h:
865 (WebCore::RenderObject::isPopupMenuClient):
866 * rendering/RenderTextControlSingleLine.cpp:
867 (WebCore::RenderTextControlSingleLine::showPopup):
868 (WebCore::RenderTextControlSingleLine::boundingBoxRect):
869 * rendering/RenderTextControlSingleLine.h:
870 (WebCore::RenderTextControlSingleLine::isPopupMenuClient):
871 * testing/Internals.cpp:
872 (WebCore::Internals::toPopupMenuClient):
873 (WebCore::Internals::popupClientPaddingLeft):
874 (WebCore::Internals::popupClientPaddingRight):
875 (WebCore::Internals::popupClientBoundingBoxRect):
876 * testing/Internals.h:
877 * testing/Internals.idl:
879 2011-10-11 Nate Chapin <japhet@chromium.org>
881 Make CachedResourceClientWalker templates, and
882 have it check and filter out bad casts when iterating
883 (currently we rely on CachedResourceClients being careful
884 to inherit from the right subclass for the type of resource
886 https://bugs.webkit.org/show_bug.cgi?id=69877
888 Reviewed by Adam Barth.
890 No new tests, no functionality change.
893 * GNUmakefile.list.am:
896 * WebCore.vcproj/WebCore.vcproj:
897 * WebCore.xcodeproj/project.pbxproj:
898 * loader/cache/CachedCSSStyleSheet.cpp:
899 * loader/cache/CachedFont.cpp:
900 * loader/cache/CachedFont.h:
901 * loader/cache/CachedImage.cpp:
902 * loader/cache/CachedImage.h:
903 * loader/cache/CachedResource.cpp:
904 * loader/cache/CachedResourceClient.h:
905 * loader/cache/CachedResourceClientWalker.cpp: Removed.
906 * loader/cache/CachedResourceClientWalker.h:
907 * loader/cache/CachedStyleSheetClient.h:
908 * loader/cache/CachedXSLStyleSheet.cpp:
910 2011-10-11 W. James MacLean <wjmaclean@chromium.org>
912 [chromium] Fix compilation guards in ScrollAnimatorNone (GESTURE_EVENTS).
913 https://bugs.webkit.org/show_bug.cgi?id=69853
915 Reviewed by Kenneth Russell.
917 Adding missing guards ENABLE(GESTURE_EVENTS) in ScrollAnimatorNone. So
918 far this hasn't been a problem since GESTURE_EVENTS are usually turned on
919 whenever SMOOTH_SCROLLING is, but it could be a problem if this changes.
921 No new tests (compilation without errors is the test).
923 * platform/ScrollAnimatorNone.cpp:
924 * platform/ScrollAnimatorNone.h:
926 2011-10-11 Kenneth Russell <kbr@google.com>
928 [chromium] Check for lost context at beginning of compositor's execution
929 https://bugs.webkit.org/show_bug.cgi?id=69776
931 Reviewed by James Robinson.
933 Test: platform/chromium/compositing/webgl-loses-compositor-context.html
935 * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
936 (WebCore::CCSingleThreadProxy::recreateContextIfNeeded):
938 2011-10-11 W. James MacLean <wjmaclean@chromium.org>
940 Loss of precision when converting from double to int and double to float in FrameView::zoomAnimatorTransformChanged()
941 https://bugs.webkit.org/show_bug.cgi?id=69739
943 Reviewed by Simon Fraser.
945 Change 'double' parameters in FrameView:: & ScrollableArea::zoomAnimatorTransformChanged()
946 to 'float' to avoid loss of precision warnings when invoking setPageScalefactor.
948 Test coverage provided by existing zoom-animator tests.
950 * page/FrameView.cpp:
951 (WebCore::FrameView::zoomAnimatorTransformChanged):
953 * platform/ScrollableArea.cpp:
954 (WebCore::ScrollableArea::zoomAnimatorTransformChanged):
955 * platform/ScrollableArea.h:
957 2011-10-11 No'am Rosenthal <noam.rosenthal@nokia.com>
959 Unreviewed build fix, unbreaking the Qt minimal bot.
960 Some #ifdef ENABLED(TILED_BACKING_STORE) clauses were missing.
962 * platform/graphics/texmap/TextureMapperNode.cpp:
963 (WebCore::TextureMapperNode::computeTiles):
964 (WebCore::TextureMapperNode::renderContent):
965 (WebCore::TextureMapperNode::paintSelf):
967 2011-10-11 Abhishek Arya <inferno@chromium.org>
969 Generalize r95461 change to include table-cell and
970 allow splitting between :before, :after content.
971 https://bugs.webkit.org/show_bug.cgi?id=69854
973 Reviewed by Eric Seidel.
975 Test: fast/table/table-row-before-after-content-around-table-cell.html
977 * rendering/RenderObject.cpp:
978 (WebCore::RenderObject::addChild):
980 2011-10-11 Dominic Mazzoni <dmazzoni@google.com>
982 AccessibilityMenuList should fire change notification when popup is not open.
983 https://bugs.webkit.org/show_bug.cgi?id=69440
985 Reviewed by Chris Fleizach.
987 Test: accessibility/menu-list-sends-change-notification.html
989 * accessibility/AccessibilityMenuList.cpp:
990 (WebCore::AccessibilityMenuList::didUpdateActiveOption):
992 2011-10-11 Joshua Bell <jsbell@chromium.org>
994 IndexedDB: implement IDBFactory.cmp method
995 https://bugs.webkit.org/show_bug.cgi?id=62293
997 Reviewed by Tony Chang.
999 * storage/IDBFactory.cpp:
1000 (WebCore::IDBFactory::cmp):
1001 * storage/IDBFactory.h:
1002 * storage/IDBFactory.idl:
1003 * storage/IDBKey.cpp:
1004 (WebCore::IDBKey::compare):
1005 (WebCore::IDBKey::isLessThan):
1006 (WebCore::IDBKey::isEqual):
1009 2011-10-11 No'am Rosenthal <noam.rosenthal@nokia.com>
1011 [Texmap] TextureMapperGL leaves GL in a modified state.
1012 https://bugs.webkit.org/show_bug.cgi?id=68983
1014 Reviewed by Andreas Kling.
1016 Disable the vertexAttribArray after clipping.
1018 No new functionality so no new tests.
1020 * platform/graphics/opengl/TextureMapperGL.cpp:
1021 (WebCore::TextureMapperGL::beginClip):
1023 2011-10-11 No'am Rosenthal <noam.rosenthal@nokia.com>
1025 [Qt][WK2] Synchronize tiling with accelerated compositing
1026 https://bugs.webkit.org/show_bug.cgi?id=69151
1028 Reviewed by Kenneth Rohde Christiansen.
1030 Enable "externally managed" tiles in TextureMapperNodes.
1031 Currently, TextureMapperNodes manage tiles themselves, the tiles being there only to
1032 overcome the 2k texture size limitation. For WebKit2, we want those tiles to be managed
1033 externally, namely through the web process via the remote tile backend for
1036 This patch adds a store for those externally managed tiles, and adds the necessary code to
1037 paint them instead of the owned tiles when appropriate.
1039 In addition, in order to support externally managed remote tiles, we have to calculate per-
1040 layer visible rects and pass them to the web process. The new collectVisibleContentRects
1041 does this - and is directly tied to the externally-managed tile approach.
1043 Code is disabled for now, but covered by existing compositing tests.
1045 * platform/graphics/texmap/TextureMapperNode.cpp:
1046 (WebCore::TextureMapperNode::computeTiles):
1047 (WebCore::clampRect):
1048 (WebCore::TextureMapperNode::collectVisibleContentRects):
1049 (WebCore::TextureMapperNode::renderContent):
1050 (WebCore::TextureMapperNode::targetRectForTileRect):
1051 (WebCore::TextureMapperNode::paintSelf):
1052 (WebCore::TextureMapperNode::createContentsTile):
1053 (WebCore::TextureMapperNode::removeContentsTile):
1054 (WebCore::TextureMapperNode::setTileBackBufferTextureForDirectlyCompositedImage):
1055 (WebCore::TextureMapperNode::clearAllDirectlyCompositedImageTiles):
1056 (WebCore::TextureMapperNode::setContentsTileBackBuffer):
1057 (WebCore::TextureMapperNode::swapContentsBuffers):
1058 (WebCore::TextureMapperNode::syncCompositingStateSelf):
1059 (WebCore::TextureMapperNode::syncCompositingState):
1060 * platform/graphics/texmap/TextureMapperNode.h:
1061 (WebCore::TextureMapperNode::size):
1062 (WebCore::TextureMapperNode::setTileOwnership):
1063 (WebCore::TextureMapperNode::setID):
1064 (WebCore::TextureMapperNode::id):
1065 (WebCore::TextureMapperNode::texture):
1066 (WebCore::TextureMapperNode::ExternallyManagedTile::ExternallyManagedTile):
1067 (WebCore::TextureMapperNode::State::State):
1069 2011-10-11 Claudio Saavedra <csaavedra@igalia.com>
1071 [GTK] GtkAuthenticationDialog: use GtkGrid instead of GtkTable
1072 https://bugs.webkit.org/show_bug.cgi?id=69749
1074 Reviewed by Martin Robinson.
1076 * platform/gtk/GtkAuthenticationDialog.cpp:
1077 (WebCore::addEntryToGrid): Migrate to GtkGrid when using GTK+ 3
1078 (WebCore::GtkAuthenticationDialog::GtkAuthenticationDialog):
1081 2011-10-11 Alexey Proskuryakov <ap@apple.com>
1085 * WebCore.exp.in: Export GraphicsContext::clearShadow().
1087 2011-10-10 Adam Klein <adamk@chromium.org>
1089 [MutationObservers] Add stub implementation of WebKitMutationObserver
1090 https://bugs.webkit.org/show_bug.cgi?id=68949
1092 Reviewed by Ryosuke Niwa, Oliver Hunt, and Dimitri Glazkov.
1094 See https://bugs.webkit.org/show_bug.cgi?id=68729 for the metabug.
1096 This patch adds a stub WebKitMutationObserver and its supporting classes
1097 MutationCallback and MutationObserverOptions.
1098 No implementation is provided for the all-important observe() and
1099 disconnect() methods.
1101 Note that WebKitMutationObserver is vendor-prefixed since it has a
1102 constructor exposed on DOMWindow. None of the rest of the API needs
1103 prefixing, as it's only available via a call through a MutationObserver
1104 callback (created by instantiating WebKitMutationObserver).
1106 Given the number of files required to get just the stub up and running,
1107 it seems reasonable to leave the actual implementation for the next
1108 patch (or more likely several patches). I've left FIXMEs in all the places
1109 that'll need augmentation.
1111 Tests: fast/mutation/mutation-observer-constructor.html
1112 fast/mutation/observe-exceptions.html
1115 * DerivedSources.cpp:
1116 * DerivedSources.make:
1117 * GNUmakefile.list.am:
1121 * WebCore.vcproj/WebCore.vcproj:
1122 * WebCore.xcodeproj/project.pbxproj:
1123 * bindings/js/JSDictionary.h:
1124 (WebCore::JSDictionary::tryGetProperty):
1125 * bindings/js/JSMutationCallbackCustom.cpp: Added.
1126 (WebCore::JSMutationCallback::handleEvent):
1127 * bindings/js/JSWebKitMutationObserverCustom.cpp: Added.
1128 (WebCore::JSWebKitMutationObserverConstructor::constructJSWebKitMutationObserver):
1129 (WebCore::JSWebKitMutationObserver::observe):
1130 * bindings/v8/custom/V8MutationCallbackCustom.cpp: Added.
1131 (WebCore::V8MutationCallback::handleEvent):
1132 * bindings/v8/custom/V8WebKitMutationObserverCustom.cpp: Added.
1133 (WebCore::V8WebKitMutationObserver::constructorCallback):
1134 (WebCore::V8WebKitMutationObserver::observeCallback):
1135 * dom/MutationCallback.h: Added.
1136 (WebCore::MutationCallback::~MutationCallback):
1137 * dom/MutationCallback.idl: Added.
1138 * dom/MutationObserverOptions.h: Added.
1139 (WebCore::MutationObserverOptions::create):
1140 (WebCore::MutationObserverOptions::childList):
1141 (WebCore::MutationObserverOptions::setChildList):
1142 (WebCore::MutationObserverOptions::attributes):
1143 (WebCore::MutationObserverOptions::setAttributes):
1144 (WebCore::MutationObserverOptions::characterData):
1145 (WebCore::MutationObserverOptions::setCharacterData):
1146 (WebCore::MutationObserverOptions::subtree):
1147 (WebCore::MutationObserverOptions::setSubtree):
1148 (WebCore::MutationObserverOptions::attributeOldValue):
1149 (WebCore::MutationObserverOptions::setAttributeOldValue):
1150 (WebCore::MutationObserverOptions::characterDataOldValue):
1151 (WebCore::MutationObserverOptions::setCharacterDataOldValue):
1152 (WebCore::MutationObserverOptions::MutationObserverOptions):
1153 * dom/WebKitMutationObserver.cpp: Added.
1154 (WebCore::WebKitMutationObserver::create):
1155 (WebCore::WebKitMutationObserver::WebKitMutationObserver):
1156 (WebCore::WebKitMutationObserver::~WebKitMutationObserver):
1157 (WebCore::WebKitMutationObserver::observe):
1158 (WebCore::WebKitMutationObserver::disconnect):
1159 * dom/WebKitMutationObserver.h: Added.
1160 * dom/WebKitMutationObserver.idl: Added.
1161 * page/DOMWindow.idl:
1163 2011-10-11 Arun Patole <BMF834@motorola.com>
1165 Need more efficient ways to set inline CSS styles
1166 https://bugs.webkit.org/show_bug.cgi?id=58157
1168 Reviewed by Dimitri Glazkov.
1170 No new tests added as this is just a code optimization.
1173 -Used CSSPropertyNames, CSSValues and CSSPrimitiveValues instead of Strings.
1174 -Removed displayString(), webkitTransitionString(), opacityString() functions as they will no longer be needed after this change.
1175 -Moved makeOpaque and makeTransparent functionality to MediaControlPanelElement from MediaControlRootElement.
1177 * html/HTMLMediaElement.cpp:
1178 (WebCore::HTMLMediaElement::mediaPlayerRateChanged):
1179 * html/shadow/MediaControlElements.cpp:
1180 (WebCore::MediaControlElement::show):
1181 (WebCore::MediaControlElement::hide):
1182 (WebCore::MediaControlPanelElement::MediaControlPanelElement):
1183 (WebCore::MediaControlPanelElement::makeOpaque):
1184 (WebCore::MediaControlPanelElement::makeTransparent):
1185 (WebCore::MediaControlInputElement::show):
1186 (WebCore::MediaControlInputElement::hide):
1187 * html/shadow/MediaControlElements.h:
1188 * html/shadow/MediaControlRootElement.cpp:
1189 (WebCore::MediaControlRootElement::MediaControlRootElement):
1190 (WebCore::MediaControlRootElement::makeOpaque):
1191 (WebCore::MediaControlRootElement::makeTransparent):
1192 * html/shadow/MediaControlRootElement.h:
1193 * html/shadow/MediaControlRootElementChromium.cpp:
1194 (WebCore::MediaControlRootElementChromium::makeOpaque):
1195 (WebCore::MediaControlRootElementChromium::makeTransparent):
1197 2011-10-11 Pavel Feldman <pfeldman@google.com>
1199 Web Inspector: make Extensions component compile.
1200 https://bugs.webkit.org/show_bug.cgi?id=69833
1202 Reviewed by Yury Semikhatsky.
1204 * inspector/compile-front-end.sh:
1205 * inspector/front-end/BinarySearch.js:
1206 * inspector/front-end/ConsoleModel.js:
1207 * inspector/front-end/ExtensionAPI.js:
1208 (injectedExtensionAPI.Network.prototype.addRequestHeaders):
1209 (injectedExtensionAPI.AuditResultImpl.prototype.addResult):
1210 (injectedExtensionAPI.AuditResultNode.prototype.addChild):
1211 * inspector/front-end/ExtensionAuditCategory.js:
1212 * inspector/front-end/ExtensionPanel.js:
1213 (WebInspector.ExtensionSidebarPane.prototype.setExpression):
1214 * inspector/front-end/ExtensionRegistryStub.js:
1215 * inspector/front-end/ExtensionServer.js:
1216 (WebInspector.ExtensionServer.prototype._postNotification):
1217 (WebInspector.ExtensionServer.prototype._onAddRequestHeaders):
1218 (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
1219 (WebInspector.ExtensionServer.prototype._registerExtension):
1220 (WebInspector.ExtensionStatus):
1221 * inspector/front-end/NetworkLog.js:
1222 (WebInspector.NetworkLog.prototype._onResourceStarted):
1223 * inspector/front-end/Object.js:
1224 (WebInspector.Object.prototype.dispatchEventToListeners):
1225 * inspector/front-end/externs.js:
1232 (ExtensionSidebarPane):
1239 2011-10-05 Pavel Podivilov <podivilov@chromium.org>
1241 Web Inspector: implement CompilerSourceMappingProvider.
1242 https://bugs.webkit.org/show_bug.cgi?id=69423
1244 Reviewed by Pavel Feldman.
1246 CompilerSourceMappingProvider implements a cross-domain communication channel for loading source mappings and source files.
1247 Front-end page can't send XHRs to source mapping server directly due to SOP restrictions. Instead, we inject an invisible
1248 iframe that is loaded from source mapping server and use window.postMessage to communicate with it. iframe has a different
1249 origin and thus doesn't have access to front-end window.
1251 Test: http/tests/inspector/compiler-source-mapping-provider.html
1253 * inspector/front-end/CompilerSourceMappingProvider.js:
1254 (WebInspector.CompilerSourceMappingProvider):
1255 (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceMapping.frameLoaded.didLoadData):
1256 (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceMapping.frameLoaded):
1257 (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceMapping):
1258 (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceCode):
1259 (WebInspector.CompilerSourceMappingProvider.prototype._sendRequest):
1260 (WebInspector.CompilerSourceMappingProvider.prototype._onMessage):
1261 (WebInspector.CompilerSourceMappingProvider.prototype._cancelRequest):
1262 * inspector/front-end/inspector.js:
1263 (WebInspector.installSourceMappingForTest):
1265 2011-10-11 Mike Reed <reed@google.com>
1267 re-add support for GDI text behind a compile flag
1268 https://bugs.webkit.org/show_bug.cgi?id=69530
1270 Reviewed by James Robinson.
1272 Reverts back to using GDI for text (when possible)
1273 but keeps skia-text version behind a compile-flag. If/when we can
1274 resolve the outstanding soft-clip and intl-performance bugs with the
1275 skia version, we may change the compile-flag to reenable skia.
1277 Previous change http://trac.webkit.org/changeset/94589 removed the GDI code.
1279 * platform/graphics/chromium/FontChromiumWin.cpp:
1280 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::TransparencyAwareFontPainter):
1281 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::init):
1282 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
1283 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
1284 (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::TransparencyAwareGlyphPainter):
1285 (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::~TransparencyAwareGlyphPainter):
1286 (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::estimateTextBounds):
1287 (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
1288 (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::hdc):
1289 (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::TransparencyAwareUniscribePainter):
1290 (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::~TransparencyAwareUniscribePainter):
1291 (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::estimateTextBounds):
1292 (WebCore::drawGlyphsWin):
1293 (WebCore::Font::drawGlyphs):
1294 (WebCore::Font::drawComplexText):
1295 * platform/graphics/chromium/UniscribeHelper.cpp:
1296 (WebCore::UniscribeHelper::draw):
1297 * platform/graphics/skia/PlatformContextSkia.cpp:
1298 (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
1299 * platform/graphics/skia/PlatformContextSkia.h:
1300 * platform/graphics/skia/SkiaFontWin.cpp:
1301 (WebCore::windowsCanHandleDrawTextShadow):
1302 (WebCore::windowsCanHandleTextDrawing):
1303 (WebCore::windowsCanHandleTextDrawingWithoutShadow):
1304 * platform/graphics/skia/SkiaFontWin.h:
1306 2011-10-11 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1308 [Qt] Remove all references to QTDIR_build and standalone_package
1310 Qt is now modularized, which means we no longer import WebKit into
1311 the Qt source tree. Instead we use git submodules, and building
1312 QtWebKit as "part of Qt" is really building QtWebKit as from trunk.
1314 To decrease the number of buildsystem configurations we also remove
1315 the standalone_package code-path used when we were providing tarballs
1316 with the derived sources pre-generated.
1318 Reviewed by Simon Hausmann.
1320 * CodeGenerators.pri:
1324 2011-10-10 Andreas Kling <kling@webkit.org>
1326 Shrink WebCore::Node on 64-bit.
1327 https://bugs.webkit.org/show_bug.cgi?id=69768
1329 Reviewed by Antti Koivisto.
1331 Rearrange TreeShared and Node members so that the node flags fall
1332 into the padding at the end of TreeShared on 64-bit, reducing the
1333 size of Node (and all subclasses) by 8 bytes.
1336 (WebCore::Node::Node):
1338 * platform/TreeShared.h:
1339 (WebCore::TreeShared::TreeShared):
1341 2011-10-11 Kent Tamura <tkent@chromium.org>
1343 Move m_listItems and m_recalcListItems from SelectElementData to HTMLSelectElement
1344 https://bugs.webkit.org/show_bug.cgi?id=69812
1346 Reviewed by Ryosuke Niwa.
1348 Move SelectElementData::m_recalcListItems,
1349 SelectElementData::m_listItems, and related functions of
1350 SelectElementData class to HTMLSelectElement.
1352 Non-const listItems() was removed because it is used only in
1353 recalcListItemsInternal() and it can access m_listItems diretly.
1355 Static recalcListItems() is changed to non-static, and renamed to
1356 recalcListItemsInternal() in order to avoid confusion with the
1357 existing recalcListItems().
1359 No new tests, just a refactoring.
1361 * dom/SelectElement.cpp:
1362 Move checkListItems() and listItems() to HTMLSelectElement.
1363 (WebCore::SelectElementData::SelectElementData):
1364 Remove Initialization of m_recalcListItems.
1365 * dom/SelectElement.h:
1366 Move m_recalcListItems, m_listItems, and related functions to HTMLSelectElement.
1367 * html/HTMLSelectElement.cpp:
1368 (WebCore::HTMLSelectElement::HTMLSelectElement):
1369 Initializes m_recalcListItems.
1370 (WebCore::HTMLSelectElement::recalcListItems):
1371 Rename the static recalcListItems() to recalcListItemsInternal().
1372 (WebCore::HTMLSelectElement::recalcListItemsIfNeeded):
1373 Use m_recalcListItems directly.
1374 (WebCore::HTMLSelectElement::nextSelectableListIndex):
1375 Update a listItems() callsite.
1376 (WebCore::HTMLSelectElement::previousSelectableListIndex): ditto.
1377 (WebCore::HTMLSelectElement::firstSelectableListIndex): ditto.
1378 (WebCore::HTMLSelectElement::lastSelectableListIndex): ditto.
1379 (WebCore::HTMLSelectElement::nextSelectableListIndexPageAway): ditto.
1380 (WebCore::HTMLSelectElement::saveLastSelection): ditto.
1381 (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex): ditto.
1382 (WebCore::HTMLSelectElement::updateListBoxSelection): ditto.
1383 (WebCore::HTMLSelectElement::listBoxOnChange): ditto.
1384 (WebCore::HTMLSelectElement::checkListItems):
1385 Moved from SelectElementData.
1386 (WebCore::HTMLSelectElement::listItems): ditto.
1387 (WebCore::HTMLSelectElement::setRecalcListItems):
1388 Use m_recalcListItems directly.
1389 (WebCore::HTMLSelectElement::recalcListItemsInternal):
1390 - Make this non-static.
1391 - Renamed from recalcListItems() to avoid confilct with another recalcListItems().
1392 - Use m_recalcListItems and m_listItems directly.
1393 (WebCore::HTMLSelectElement::selectedIndex):
1394 Update a listItems() callsite.
1395 (WebCore::HTMLSelectElement::setSelectedIndexInternal): ditto.
1396 (WebCore::HTMLSelectElement::optionToListIndex): ditto.
1397 (WebCore::HTMLSelectElement::listToOptionIndex): ditto.
1398 (WebCore::HTMLSelectElement::deselectItemsWithoutValidation): ditto.
1399 (WebCore::HTMLSelectElement::saveFormControlState):
1400 Update callsites of listItems() and recalcListItems().
1401 (WebCore::HTMLSelectElement::restoreFormControlState):
1402 Update a listItems() callsite.
1403 (WebCore::HTMLSelectElement::appendFormData): ditto.
1404 (WebCore::HTMLSelectElement::reset): ditto.
1405 (WebCore::HTMLSelectElement::menuListDefaultEventHandler): ditto.
1406 (WebCore::HTMLSelectElement::updateSelectedState): ditto.
1407 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): ditto.
1408 (WebCore::HTMLSelectElement::lastSelectedListIndex): ditto.
1409 (WebCore::HTMLSelectElement::typeAheadFind): ditto.
1410 (WebCore::HTMLSelectElement::insertedIntoTree):
1411 Update a recalcListItems() callsite.
1412 (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
1413 Update a listItems() callsite.
1414 (WebCore::HTMLSelectElement::length): ditto.
1415 * html/HTMLSelectElement.h:
1416 Move m_recalcListItems, m_listItems, and related functions from SelectElementData.
1417 * html/HTMLSelectElementWin.cpp:
1418 (WebCore::HTMLSelectElement::platformHandleKeydownEvent):
1419 Update a listItems() callsite.
1421 2011-10-11 Kenichi Ishibashi <bashi@chromium.org>
1423 [Chromium] Complex script code path breaks on Windows XP when a CFF font is used
1424 https://bugs.webkit.org/show_bug.cgi?id=69497
1426 Reviewed by Kent Tamura.
1428 Don't use CFF webfonts when ScriptShape() can't handle it.
1429 ScriptShape() indicates us the case by setting fNoGlyphIndex to TRUE.
1430 If it's TRUE, we don't use the font. This could happen with early
1431 version of Uniscribe on WinXP.
1433 No new tests because the version of Uniscribe depends on environment.
1434 One can install newer version of Uniscribe on WinXP.
1436 * platform/graphics/chromium/UniscribeHelper.cpp:
1437 (WebCore::canUseGlyphIndex): Added.
1438 (WebCore::UniscribeHelper::shape): Don't use the shape result when canUseGlyphIndex() returns false.
1440 2011-10-11 John Bauman <jbauman@chromium.org>
1442 Fix crash with toDataURL to JPEG
1443 https://bugs.webkit.org/show_bug.cgi?id=69681
1445 Reviewed by Kenneth Russell.
1447 Move RefPtr declaration outside if to make sure image data still
1448 exists through CGImageToDataURL.
1450 * platform/graphics/cg/ImageBufferCG.cpp:
1451 (WebCore::ImageBuffer::toDataURL):
1453 2011-10-10 Adam Barth <abarth@webkit.org>
1455 Update test results.
1457 * bindings/scripts/test/V8/V8TestInterface.h:
1458 (WebCore::V8TestInterface::existingWrapper):
1459 (WebCore::V8TestInterface::wrap):
1460 * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
1461 (WebCore::V8TestMediaQueryListListener::existingWrapper):
1462 (WebCore::V8TestMediaQueryListListener::wrap):
1463 * bindings/scripts/test/V8/V8TestObj.cpp:
1464 (WebCore::TestObjInternal::readOnlyTestObjAttrAttrGetter):
1465 (WebCore::TestObjInternal::cachedAttribute1AttrGetter):
1466 (WebCore::TestObjInternal::cachedAttribute2AttrGetter):
1467 * bindings/scripts/test/V8/V8TestObj.h:
1468 (WebCore::V8TestObj::existingWrapper):
1469 (WebCore::V8TestObj::wrap):
1470 * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
1471 (WebCore::V8TestSerializedScriptValueInterface::existingWrapper):
1472 (WebCore::V8TestSerializedScriptValueInterface::wrap):
1474 2011-10-10 Abhishek Arya <inferno@chromium.org>
1476 Style not updated on text fragment in :first-letter
1477 nested in :before table.
1478 https://bugs.webkit.org/show_bug.cgi?id=69540
1480 Reviewed by Dan Bernstein.
1482 Test: fast/css-generated-content/first-letter-in-nested-before-table.html
1484 * rendering/RenderObjectChildList.cpp:
1485 (WebCore::RenderObjectChildList::updateBeforeAfterContent):
1487 2011-10-10 Sheriff Bot <webkit.review.bot@gmail.com>
1489 Unreviewed, rolling out r97121.
1490 http://trac.webkit.org/changeset/97121
1491 https://bugs.webkit.org/show_bug.cgi?id=69815
1493 Many layout tests failed (Requested by tkent on #webkit).
1495 * dom/SelectElement.cpp:
1496 (WebCore::SelectElementData::SelectElementData):
1497 (WebCore::SelectElementData::checkListItems):
1498 (WebCore::SelectElementData::listItems):
1499 * dom/SelectElement.h:
1500 (WebCore::SelectElementData::shouldRecalcListItems):
1501 (WebCore::SelectElementData::setShouldRecalcListItems):
1502 (WebCore::SelectElementData::rawListItems):
1503 * html/HTMLSelectElement.cpp:
1504 (WebCore::HTMLSelectElement::HTMLSelectElement):
1505 (WebCore::HTMLSelectElement::recalcListItems):
1506 (WebCore::HTMLSelectElement::recalcListItemsIfNeeded):
1507 (WebCore::HTMLSelectElement::nextSelectableListIndex):
1508 (WebCore::HTMLSelectElement::previousSelectableListIndex):
1509 (WebCore::HTMLSelectElement::firstSelectableListIndex):
1510 (WebCore::HTMLSelectElement::lastSelectableListIndex):
1511 (WebCore::HTMLSelectElement::nextSelectableListIndexPageAway):
1512 (WebCore::HTMLSelectElement::saveLastSelection):
1513 (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
1514 (WebCore::HTMLSelectElement::updateListBoxSelection):
1515 (WebCore::HTMLSelectElement::listBoxOnChange):
1516 (WebCore::HTMLSelectElement::setRecalcListItems):
1517 (WebCore::HTMLSelectElement::selectedIndex):
1518 (WebCore::HTMLSelectElement::setSelectedIndexInternal):
1519 (WebCore::HTMLSelectElement::optionToListIndex):
1520 (WebCore::HTMLSelectElement::listToOptionIndex):
1521 (WebCore::HTMLSelectElement::deselectItemsWithoutValidation):
1522 (WebCore::HTMLSelectElement::saveFormControlState):
1523 (WebCore::HTMLSelectElement::restoreFormControlState):
1524 (WebCore::HTMLSelectElement::appendFormData):
1525 (WebCore::HTMLSelectElement::reset):
1526 (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
1527 (WebCore::HTMLSelectElement::updateSelectedState):
1528 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
1529 (WebCore::HTMLSelectElement::lastSelectedListIndex):
1530 (WebCore::HTMLSelectElement::typeAheadFind):
1531 (WebCore::HTMLSelectElement::insertedIntoTree):
1532 (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
1533 (WebCore::HTMLSelectElement::length):
1534 * html/HTMLSelectElement.h:
1535 (WebCore::HTMLSelectElement::listItems):
1536 * html/HTMLSelectElementWin.cpp:
1537 (WebCore::HTMLSelectElement::platformHandleKeydownEvent):
1539 2011-10-10 Kent Tamura <tkent@chromium.org>
1541 Move m_listItems and m_recalcListItems from SelectElementData to HTMLSelectElement
1542 https://bugs.webkit.org/show_bug.cgi?id=69812
1544 Reviewed by Ryosuke Niwa.
1546 Move SelectElementData::m_recalcListItems,
1547 SelectElementData::m_listItems, and related functions of
1548 SelectElementData class to HTMLSelectElement.
1550 Non-const listItems() was removed because it is used only in
1551 recalcListItemsInternal() and it can access m_listItems diretly.
1553 Static recalcListItems() is changed to non-static, and renamed to
1554 recalcListItemsInternal() in order to avoid confusion with the
1555 existing recalcListItems().
1557 No new tests, just a refactoring.
1559 * dom/SelectElement.cpp:
1560 Move checkListItems() and listItems() to HTMLSelectElement.
1561 (WebCore::SelectElementData::SelectElementData):
1562 Remove Initialization of m_recalcListItems.
1563 * dom/SelectElement.h:
1564 Move m_recalcListItems, m_listItems, and related functions to HTMLSelectElement.
1565 * html/HTMLSelectElement.cpp:
1566 (WebCore::HTMLSelectElement::HTMLSelectElement):
1567 Initializes m_recalcListItems.
1568 (WebCore::HTMLSelectElement::recalcListItems):
1569 Rename the static recalcListItems() to recalcListItemsInternal().
1570 (WebCore::HTMLSelectElement::recalcListItemsIfNeeded):
1571 Use m_recalcListItems directly.
1572 (WebCore::HTMLSelectElement::nextSelectableListIndex):
1573 Update a listItems() callsite.
1574 (WebCore::HTMLSelectElement::previousSelectableListIndex): ditto.
1575 (WebCore::HTMLSelectElement::firstSelectableListIndex): ditto.
1576 (WebCore::HTMLSelectElement::lastSelectableListIndex): ditto.
1577 (WebCore::HTMLSelectElement::nextSelectableListIndexPageAway): ditto.
1578 (WebCore::HTMLSelectElement::saveLastSelection): ditto.
1579 (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex): ditto.
1580 (WebCore::HTMLSelectElement::updateListBoxSelection): ditto.
1581 (WebCore::HTMLSelectElement::listBoxOnChange): ditto.
1582 (WebCore::HTMLSelectElement::checkListItems):
1583 Moved from SelectElementData.
1584 (WebCore::HTMLSelectElement::listItems): ditto.
1585 (WebCore::HTMLSelectElement::setRecalcListItems):
1586 Use m_recalcListItems directly.
1587 (WebCore::HTMLSelectElement::recalcListItemsInternal):
1588 - Make this non-static.
1589 - Renamed from recalcListItems() to avoid confilct with another recalcListItems().
1590 - Use m_recalcListItems and m_listItems directly.
1591 (WebCore::HTMLSelectElement::selectedIndex):
1592 Update a listItems() callsite.
1593 (WebCore::HTMLSelectElement::setSelectedIndexInternal): ditto.
1594 (WebCore::HTMLSelectElement::optionToListIndex): ditto.
1595 (WebCore::HTMLSelectElement::listToOptionIndex): ditto.
1596 (WebCore::HTMLSelectElement::deselectItemsWithoutValidation): ditto.
1597 (WebCore::HTMLSelectElement::saveFormControlState):
1598 Update callsites of listItems() and recalcListItems().
1599 (WebCore::HTMLSelectElement::restoreFormControlState):
1600 Update a listItems() callsite.
1601 (WebCore::HTMLSelectElement::appendFormData): ditto.
1602 (WebCore::HTMLSelectElement::reset): ditto.
1603 (WebCore::HTMLSelectElement::menuListDefaultEventHandler): ditto.
1604 (WebCore::HTMLSelectElement::updateSelectedState): ditto.
1605 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): ditto.
1606 (WebCore::HTMLSelectElement::lastSelectedListIndex): ditto.
1607 (WebCore::HTMLSelectElement::typeAheadFind): ditto.
1608 (WebCore::HTMLSelectElement::insertedIntoTree):
1609 Update a recalcListItems() callsite.
1610 (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
1611 Update a listItems() callsite.
1612 (WebCore::HTMLSelectElement::length): ditto.
1613 * html/HTMLSelectElement.h:
1614 Move m_recalcListItems, m_listItems, and related functions from SelectElementData.
1615 * html/HTMLSelectElementWin.cpp:
1616 (WebCore::HTMLSelectElement::platformHandleKeydownEvent):
1617 Update a listItems() callsite.
1619 2011-10-10 Dan Bernstein <mitz@apple.com>
1621 <rdar://problem/10246137> Duplicate ::after content when both ::before and ::after are styled as table parts
1623 Reviewed by Sam Weinig.
1625 Test: fast/css-generated-content/table-parts-before-and-after.html
1627 * rendering/RenderObject.cpp:
1628 (WebCore::RenderObject::addChild): Prevented table part childern after a ::before table from being merged
1630 * rendering/RenderTable.cpp:
1631 (WebCore::RenderTable::addChild): Prevented children after a ::before table section from being merged
1634 2011-10-10 Nate Chapin <japhet@chromium.org>
1636 Most of the functions in CachedResourceClient are specific
1637 to a single type of CachedResource. Move these callbacks into
1638 separate subclasses of CachedResourceClient, and leave only
1639 the common callback (notifyFinished) in the base class.
1640 https://bugs.webkit.org/show_bug.cgi?id=69790
1642 Reviewed by Adam Barth.
1644 No new tests, no functionality changed intended.
1646 * css/CSSFontFaceSource.h:
1647 * css/CSSImageValue.h:
1648 * css/CSSImportRule.h:
1649 * dom/ProcessingInstruction.cpp:
1650 * dom/ProcessingInstruction.h:
1651 * html/HTMLLinkElement.h:
1652 * html/ImageDocument.h:
1653 * loader/ImageLoader.h:
1654 * loader/cache/CachedCSSStyleSheet.cpp:
1655 * loader/cache/CachedCSSStyleSheet.h:
1656 * loader/cache/CachedFont.cpp:
1657 * loader/cache/CachedFont.h:
1658 * loader/cache/CachedImage.cpp:
1659 * loader/cache/CachedImage.h:
1660 * loader/cache/CachedResourceClient.h:
1661 * loader/cache/CachedXSLStyleSheet.cpp:
1662 * loader/cache/CachedXSLStyleSheet.h:
1663 * platform/chromium/ClipboardChromium.h:
1664 * platform/gtk/ClipboardGtk.h:
1665 * platform/mac/ClipboardMac.h:
1666 * platform/qt/ClipboardQt.h:
1667 * platform/win/ClipboardWin.h:
1668 * rendering/RenderObject.cpp:
1669 * rendering/RenderObject.h:
1670 * svg/SVGFEImageElement.h:
1671 * svg/SVGFontFaceUriElement.h:
1672 * xml/XSLImportRule.h:
1674 2011-10-10 Sheriff Bot <webkit.review.bot@gmail.com>
1676 Unreviewed, rolling out r97087.
1677 http://trac.webkit.org/changeset/97087
1678 https://bugs.webkit.org/show_bug.cgi?id=69805
1680 failing assert on debug builds (Requested by simonjam on
1683 * bindings/ScriptControllerBase.cpp:
1684 (WebCore::ScriptController::executeIfJavaScriptURL):
1685 * loader/DocumentWriter.cpp:
1686 (WebCore::DocumentWriter::replaceDocument):
1687 (WebCore::DocumentWriter::begin):
1688 * loader/DocumentWriter.h:
1690 2011-10-10 Adam Barth <abarth@webkit.org>
1692 [V8] CodeGeneratorV8 shouldn't hardcode the list of ActiveDOMObjects
1693 https://bugs.webkit.org/show_bug.cgi?id=69792
1695 Reviewed by Nate Chapin.
1697 We used to hard code the list of active DOM objects in the code
1698 generator, but now we have an IDL attribute. This patch switches the
1699 code generator over to using the IDL attribute.
1701 * bindings/scripts/CodeGeneratorV8.pm:
1703 (GenerateNormalAttrGetter):
1704 (GenerateImplementation):
1705 (GetDomMapFunction):
1707 2011-10-10 Nico Weber <thakis@chromium.org>
1709 PluginDocumentParser uses incorrect syntax for background color
1710 https://bugs.webkit.org/show_bug.cgi?id=69694
1712 Reviewed by Adam Barth.
1714 * html/PluginDocument.cpp:
1715 (WebCore::PluginDocumentParser::createDocumentStructure):
1717 2011-10-10 Ryosuke Niwa <rniwa@webkit.org>
1719 REGRESSION(r96870): editing/pasteboard/smart-paste-008.html fails on non-Mac
1720 https://bugs.webkit.org/show_bug.cgi?id=69587
1722 Reviewed by Enrica Casucci.
1724 Insert a space at the correct offset when startNode is a text node.
1726 * editing/ReplaceSelectionCommand.cpp:
1727 (WebCore::ReplaceSelectionCommand::addSpacesForSmartReplace):
1729 2011-09-20 Jer Noble <jer.noble@apple.com>
1731 MediaControlSeekButtonElement should support seeking by changing the playback rate.
1732 https://bugs.webkit.org/show_bug.cgi?id=63595
1734 Reviewed by Eric Carlson.
1736 Test: media/video-controls-scanning.html
1738 Add a new property to HTMLMediaElement, supportsScanning(), which returns whether the
1739 element is capable of playing its media at a rate greater than 1x. HTMLMediaElement passes
1740 this call through to MediaPlayer and MediaPlayerPrivate. If this property returns true, the
1741 built-in scanning controls can prefer to scan by changing the playbackRate, rather than by
1742 repeatedly seeking small amounts of time. Unless overridden by specific media engines, this
1743 property defaults to "false".
1745 * html/HTMLMediaElement.h:
1746 * html/HTMLMediaElement.cpp:
1747 (WebCore::HTMLMediaElement::supportsScanning): Added. Calls through to MediaPlayer.
1748 * platform/graphics/MediaPlayer.h:
1749 * platform/graphics/MediaPlayer.cpp:
1750 (WebCore::MediaPlayer::supportsScanning): Added. Calls through to MediaPlayerPrivate.
1751 * platform/graphics/MediaPlayerPrivate.h:
1752 (WebCore::MediaPlayerPrivateInterface::supportsScanning): Added. Defaults to "false".
1753 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
1754 (WebCore::MediaPlayerPrivateAVFoundation::supportsScanning): Added.
1755 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1756 (WebCore::MediaPlayerPrivateQTKit::supportsScanning): Added.
1758 MediaControlSeekButtonElement now queries HTMLMediaElement::supportsScanning() to see if the
1759 media element can implement its seeking behavior by scanning the media at greater than 1x
1760 rate. Note whether the media was playing or paused when the seek begins, so that the playing
1761 state can be restored when seeking ends. Instead of capturing the mouse after mouseDown,
1762 the seek button now responds to setActive() and begins seeking when the button is active
1763 and stops when it becomes inactive.
1765 Some behaviors have changed: clicking on the seek button no longer causes the media element
1766 to pause; the media will end in the same state it began after the click. cStepTime has been
1767 eliminated; Clicking the seek button will always skip by at least cSeekTime, or 0.2s.
1769 * html/shadow/MediaControlElements.cpp:
1770 (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement): Initialize new
1772 (WebCore::MediaControlSeekButtonElement::defaultEventHandler): Mark mouseDown and mouseUp
1773 as defaultHandled, so as not to trigger drag start and drag end actions.
1774 (WebCore::MediaControlSeekButtonElement::setActive): Call startTimer or stopTimer based
1775 on whether the button is active or not.
1776 (WebCore::MediaControlSeekButtonElement::startTimer): Determine whether to scan or skip
1777 and start the seekTimer.
1778 (WebCore::MediaControlSeekButtonElement::stopTimer): Restore the playing state and
1780 (WebCore::MediaControlSeekButtonElement::seekTimerFired): Depending on whether we're
1781 scanning or skipping, jump ahead or change the playback rate.
1782 * html/shadow/MediaControlElements.h:
1784 2011-10-10 Mark Hahnenberg <mhahnenberg@apple.com>
1786 Remove getCallDataVirtual methods
1787 https://bugs.webkit.org/show_bug.cgi?id=69186
1789 Reviewed by Geoffrey Garen.
1793 Removed all getCallDataVirtual methods and replaced their call sites
1794 with an explicit lookup in the MethodTable.
1797 * bindings/js/JSCallbackData.cpp:
1798 (WebCore::JSCallbackData::invokeCallback):
1799 * bindings/js/JSCustomXPathNSResolver.cpp:
1800 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
1801 * bindings/js/JSErrorHandler.cpp:
1802 (WebCore::JSErrorHandler::handleEvent):
1803 * bindings/js/JSEventListener.cpp:
1804 (WebCore::JSEventListener::handleEvent):
1805 * bindings/js/JSHTMLAllCollectionCustom.cpp:
1806 * bindings/js/JSHTMLAppletElementCustom.cpp:
1807 * bindings/js/JSHTMLEmbedElementCustom.cpp:
1808 * bindings/js/JSHTMLObjectElementCustom.cpp:
1809 * bindings/js/JSInjectedScriptHostCustom.cpp:
1810 (WebCore::JSInjectedScriptHost::evaluate):
1811 * bindings/js/JSPluginElementFunctions.cpp:
1812 (WebCore::runtimeObjectGetCallData):
1813 * bindings/scripts/CodeGeneratorJS.pm:
1815 * bridge/objc/objc_runtime.h:
1816 * bridge/objc/objc_runtime.mm:
1817 * bridge/qt/qt_runtime.cpp:
1818 (JSC::Bindings::QtRuntimeConnectionMethod::call):
1819 (JSC::Bindings::isJavaScriptFunction):
1820 * bridge/qt/qt_runtime.h:
1821 (JSC::Bindings::QtRuntimeMetaMethod::create):
1822 (JSC::Bindings::QtRuntimeMetaMethod::createStructure):
1823 (JSC::Bindings::QtRuntimeConnectionMethod::create):
1824 (JSC::Bindings::QtRuntimeConnectionMethod::createStructure):
1825 * bridge/runtime_method.cpp:
1826 * bridge/runtime_method.h:
1827 * bridge/runtime_object.cpp:
1828 * bridge/runtime_object.h:
1830 2011-10-06 Jer Noble <jer.noble@apple.com>
1832 media/video-loop.html is failing on Lion because of negative currentTime()
1833 https://bugs.webkit.org/show_bug.cgi?id=69468
1835 Reviewed by Darin Adler.
1837 No new tests. Covered by media/video-loop.html test.
1839 AVFoundation will occasionally return small, negative current times during loop operations.
1840 Clean up these negative times before returning the currentTime.
1842 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1843 (WebCore::MediaPlayerPrivateAVFoundationObjC::currentTime):
1845 2011-10-10 Jeremy Apthorp <jeremya@chromium.org>
1847 Exiting fullscreen shouldn't crash if the element that was fullscreened
1848 had associated anonymous blocks.
1849 https://bugs.webkit.org/show_bug.cgi?id=68503
1851 Reviewed by Simon Fraser.
1853 Test: fullscreen/full-screen-render-inline.html
1854 Test: fullscreen/parent-flow-inline-with-block-child.html
1856 * rendering/RenderBlock.cpp:
1857 (WebCore::RenderBlock::moveChildTo):
1858 (WebCore::RenderBlock::moveChildrenTo):
1859 * rendering/RenderBlock.h:
1860 (WebCore::RenderBlock::moveChildTo):
1861 (WebCore::RenderBlock::moveAllChildrenTo):
1862 (WebCore::RenderBlock::moveChildrenTo):
1863 * rendering/RenderFullScreen.cpp:
1864 (RenderFullScreen::unwrapRenderer):
1865 Move all children back to the parent, not just the firstChild.
1867 2011-10-10 Sergey Glazunov <serg.glazunov@gmail.com>
1869 ScriptController::executeIfJavaScriptURL gets confused by synchronous frame loads
1870 https://bugs.webkit.org/show_bug.cgi?id=69777
1872 Reviewed by Adam Barth.
1874 Test: http/tests/security/xss-DENIED-synchronous-frame-load-in-javascript-url.html
1876 * bindings/ScriptControllerBase.cpp:
1877 (WebCore::ScriptController::executeIfJavaScriptURL):
1878 * loader/DocumentWriter.cpp:
1879 (WebCore::DocumentWriter::replaceDocument):
1880 (WebCore::DocumentWriter::begin):
1881 * loader/DocumentWriter.h:
1883 2011-10-10 Nayan Kumar K <nayankk@motorola.com>
1885 Add missing ifdef for JAVASCRIPT_DEBUGGER feature.
1886 https://bugs.webkit.org/show_bug.cgi?id=69758
1888 Reviewed by Adam Barth.
1890 No new tests added since this is a build failure fix.
1892 * bindings/v8/custom/V8ScriptProfileCustom.cpp:
1893 * bindings/v8/custom/V8ScriptProfileNodeCustom.cpp:
1895 2011-10-10 Simon Fraser <simon.fraser@apple.com>
1897 REGRESSION(96070) 25% intl1 PLT regression from scrollbar invalidation
1898 https://bugs.webkit.org/show_bug.cgi?id=69238
1900 Reviewed by Darin Adler.
1902 Fix PLT regression from additional scrollbars invalidations.
1904 Don't invalidate the scrollbar rect from setHasHorizontalScrollbar()
1905 and setHasVerticalScrollbar(), because this is called during FrameView
1906 teardown, at which point the invalidation is redundant.
1908 Instead, invalidate from ScrollView::updateScrollbars(), which is
1909 called only when scrollbars change because of size or layout
1912 * platform/ScrollView.cpp:
1913 (WebCore::ScrollView::setHasHorizontalScrollbar):
1914 (WebCore::ScrollView::setHasVerticalScrollbar):
1915 (WebCore::ScrollView::updateScrollbars):
1917 2011-10-10 Abhishek Arya <inferno@chromium.org>
1919 Style for updated due to inability to locate
1920 :before content in presence of listmarkers and runins.
1921 https://bugs.webkit.org/show_bug.cgi?id=68624
1923 Reviewed by Dan Bernstein.
1925 Tests: fast/lists/inline-before-content-after-list-marker.html
1926 fast/runin/runin-between-list-marker-and-before-content.html
1927 fast/runin/runin-into-div-with-float-child.html
1928 fast/runin/runin-not-go-into-float.html
1930 * rendering/RenderBlock.cpp:
1931 (WebCore::RenderBlock::handleRunInChild): Fix as per spec that
1932 we should not be skipping over floating/positioned renderers to
1933 push runins into neighbouring block. This matches Opera renderings.
1934 * rendering/RenderObject.cpp: Add const to parameter variable
1935 to make call from beforePseudoElementRenderer easier. Also matches
1936 CounterNode.h definition.
1937 (WebCore::RenderObject::nextInPreOrder):
1938 (WebCore::RenderObject::nextInPreOrderAfterChildren):
1939 * rendering/RenderObject.h: Same const addition.
1940 * rendering/RenderObjectChildList.cpp:
1941 (WebCore::RenderObjectChildList::beforePseudoElementRenderer):
1942 Remove skipping of floating/positioned renderers, similar to
1943 handleRunIn. Revert code change in r94857 and add better next
1944 sibling iterator. This addresses the layouttest in r94857 where
1945 :before content is in its own anonymous rendertable.
1947 2011-10-10 Abhishek Arya <inferno@chromium.org>
1949 Handle insertion into an anonymous table part that
1950 is followed by a non-anonymous block correctly.
1951 https://bugs.webkit.org/show_bug.cgi?id=69536
1953 Reviewed by Dan Bernstein.
1955 Tests: fast/table/table-insert-before-non-anonymous-block.html
1957 * rendering/RenderTable.cpp:
1958 (WebCore::RenderTable::addChild):
1959 * rendering/RenderTableRow.cpp:
1960 (WebCore::RenderTableRow::addChild):
1961 * rendering/RenderTableSection.cpp:
1962 (WebCore::RenderTableSection::addChild):
1963 (WebCore::RenderTableSection::splitColumn):
1965 2011-10-10 Kent Tamura <tkent@chromium.org>
1967 Make static functions in HTMLSelectElement.cpp member functions of HTMLSelectElement class
1968 https://bugs.webkit.org/show_bug.cgi?id=69755
1970 Reviewed by Ryosuke Niwa.
1973 No new tests, just a refactoring.
1975 * html/HTMLSelectElement.cpp:
1976 (WebCore::HTMLSelectElement::nextValidIndex):
1977 Make this a static member function of HTMLSelectElement.
1978 (WebCore::HTMLSelectElement::nextSelectableListIndex):
1979 Make this a member function of HTMLSelectElement.
1980 (WebCore::HTMLSelectElement::previousSelectableListIndex): ditto.
1981 (WebCore::HTMLSelectElement::firstSelectableListIndex): ditto.
1982 (WebCore::HTMLSelectElement::lastSelectableListIndex): ditto.
1983 (WebCore::HTMLSelectElement::nextSelectableListIndexPageAway): ditto.
1984 (WebCore::HTMLSelectElement::selectAll): Update callsite of the above functions.
1985 (WebCore::HTMLSelectElement::setSelectedIndexInternal): ditto.
1986 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): ditto.
1987 * html/HTMLSelectElement.h:
1988 - Add the above function declarations.
1989 - Move SkipDirection definition from HTMLSelectElement.cpp.
1991 2011-10-10 Pavel Feldman <pfeldman@google.com>
1993 Web Inspector: annotate DOMAgent, Debugger(Presentation)Model with types.
1994 https://bugs.webkit.org/show_bug.cgi?id=69726
1996 Reviewed by Yury Semikhatsky.
1998 * inspector/compile-front-end.sh:
1999 * inspector/front-end/ApplicationCacheItemsView.js:
2000 (WebInspector.ApplicationCacheItemsView):
2001 * inspector/front-end/AuditsPanel.js:
2002 (WebInspector.AuditsPanel):
2003 * inspector/front-end/BreakpointManager.js:
2004 (WebInspector.BreakpointManager.prototype._breakpointResolved):
2005 * inspector/front-end/CSSStyleModel.js:
2006 * inspector/front-end/CompilerSourceMapping.js:
2007 (WebInspector.CompilerSourceMapping.prototype.compiledLocationToSourceLocation):
2008 (WebInspector.CompilerSourceMapping.prototype.sourceLocationToCompiledLocation):
2009 (WebInspector.CompilerSourceMapping.prototype.sources):
2010 * inspector/front-end/ConsoleView.js:
2011 (WebInspector.ConsoleView.prototype._completions.evaluated):
2012 (WebInspector.ConsoleView.prototype._completions.receivedPropertyNamesFromEval):
2013 (WebInspector.ConsoleView.prototype.evalInInspectedWindow):
2014 * inspector/front-end/CookieItemsView.js:
2015 (WebInspector.CookieItemsView):
2016 * inspector/front-end/DOMAgent.js:
2017 (WebInspector.DOMNode.prototype.isXMLNode):
2018 (WebInspector.DOMDocument):
2019 (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable.onDocumentAvailable):
2020 (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable):
2021 (WebInspector.DOMDispatcher.prototype.characterDataModified):
2022 (WebInspector.DOMDispatcher.prototype.childNodeCountUpdated):
2023 (WebInspector.DOMDispatcher.prototype.childNodeInserted):
2024 (WebInspector.DOMDispatcher.prototype.childNodeRemoved):
2025 * inspector/front-end/DOMStorageItemsView.js:
2026 (WebInspector.DOMStorageItemsView):
2027 * inspector/front-end/DatabaseTableView.js:
2028 (WebInspector.DatabaseTableView):
2029 * inspector/front-end/DebuggerModel.js:
2030 (WebInspector.DebuggerModel):
2031 (WebInspector.DebuggerPausedDetails):
2032 (WebInspector.DebuggerModel.prototype.reset):
2033 (WebInspector.DebuggerModel.prototype.get callFrames):
2034 (WebInspector.DebuggerModel.prototype._pausedScript):
2035 (WebInspector.DebuggerModel.prototype._resumedScript):
2036 (WebInspector.DebuggerModel.prototype._parsedScriptSource):
2037 (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
2038 (WebInspector.DebuggerDispatcher.prototype.scriptParsed):
2039 (WebInspector.DebuggerDispatcher.prototype.breakpointResolved):
2040 * inspector/front-end/DebuggerPresentationModel.js:
2041 (WebInspector.DebuggerPresentationModel.prototype._parsedScriptSource):
2042 (WebInspector.DebuggerPresentationModel.prototype._failedToParseScriptSource):
2043 (WebInspector.DebuggerPresentationModel.prototype._sourceMappingUpdated):
2044 (WebInspector.DebuggerPresentationModel.prototype._updateBreakpointsAfterLiveEdit):
2045 (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
2046 (WebInspector.DebuggerPresentationModel.prototype._createPresentationMessage):
2047 (WebInspector.PresentationConsoleMessage):
2048 (WebInspector.PresentationCallFrame.prototype.evaluate):
2049 (WebInspector.DebuggerPresentationModel.Linkifier.prototype._updateSourceAnchors):
2050 * inspector/front-end/ElementsPanel.js:
2051 (WebInspector.ElementsPanel):
2052 (WebInspector.ElementsPanel.prototype._documentUpdated.selectLastSelectedNode):
2053 (WebInspector.ElementsPanel.prototype._documentUpdated):
2054 * inspector/front-end/NetworkPanel.js:
2055 * inspector/front-end/Object.js:
2056 (WebInspector.Object.prototype.dispatchEventToListeners):
2057 (WebInspector.Event):
2058 (WebInspector.Event.prototype.stopPropagation):
2059 (WebInspector.Event.prototype.preventDefault):
2060 * inspector/front-end/RawSourceCode.js:
2061 (WebInspector.RawSourceCode.SourceMapping):
2062 (WebInspector.RawSourceCode.SourceMapping.prototype.rawLocationToUILocation):
2063 (WebInspector.RawSourceCode.SourceMapping.prototype.uiLocationToRawLocation):
2064 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.rawLocationToUILocation):
2065 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiLocationToRawLocation):
2066 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.rawLocationToUILocation):
2067 (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.rawLocationToUILocation):
2068 (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.uiLocationToRawLocation):
2069 * inspector/front-end/Script.js:
2070 (WebInspector.Script):
2071 (WebInspector.Script.prototype.requestSource):
2072 (WebInspector.Script.prototype.searchInContent):
2073 (WebInspector.Script.prototype.editSource):
2074 * inspector/front-end/ScriptsPanel.js:
2075 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
2076 * inspector/front-end/TimelinePanel.js:
2077 (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
2078 * inspector/front-end/UISourceCode.js:
2079 (WebInspector.UISourceCode):
2080 (WebInspector.ContentProvider.SearchMatch):
2081 * inspector/front-end/WatchExpressionsSidebarPane.js:
2082 (WebInspector.WatchExpressionsSection.prototype.update):
2083 * inspector/front-end/externs.js:
2084 * inspector/generate-protocol-externs:
2086 2011-10-10 Ilya Tikhonovsky <loislo@chromium.org>
2088 Web Inspector: Linkifier.reset throw an exception if it is called after reset of debuggerPresentationModel.
2089 https://bugs.webkit.org/show_bug.cgi?id=69756
2091 Reviewed by Yury Semikhatsky.
2093 * inspector/front-end/DebuggerPresentationModel.js:
2094 (WebInspector.DebuggerPresentationModel.Linkifier.prototype.reset):
2096 2011-09-28 Pavel Podivilov <podivilov@chromium.org>
2098 Web Inspector: RawSourceCode could be mapped to multiple sources.
2099 https://bugs.webkit.org/show_bug.cgi?id=68526
2101 Replace SourceMapping.uiSourceCode with SourceMapping.uiSourceCodeList as there could be more
2102 then one UISourceCode associated with a RawSourceCode.
2104 Reviewed by Pavel Feldman.
2106 * inspector/front-end/DebuggerPresentationModel.js:
2107 (WebInspector.DebuggerPresentationModel.prototype._sourceMappingUpdated):
2108 (WebInspector.DebuggerPresentationModel.prototype._updateSourceMapping):
2109 (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
2110 (WebInspector.PresentationCallFrame.prototype.get url):
2111 (WebInspector.DebuggerPresentationModelResourceBinding.prototype.canSetContent):
2112 (WebInspector.DebuggerPresentationModelResourceBinding.prototype.setContent):
2113 * inspector/front-end/ScriptsPanel.js:
2114 (WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced):
2115 * inspector/front-end/SourceFile.js:
2116 (WebInspector.RawSourceCode.prototype._saveSourceMapping):
2117 (WebInspector.RawSourceCode.PlainSourceMapping):
2118 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.rawLocationToUILocation):
2119 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiSourceCodeList):
2120 (WebInspector.RawSourceCode.FormattedSourceMapping):
2121 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.rawLocationToUILocation):
2122 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiSourceCodeList):
2124 2011-10-10 Andreas Kling <kling@webkit.org>
2126 Shrink RenderLayer and ScrollableArea.
2127 https://bugs.webkit.org/show_bug.cgi?id=69759
2129 Reviewed by Antti Koivisto.
2131 Rearrange the members of RenderLayer and its base class ScrollableArea
2132 to maximize struct packing, shrinking RenderLayer by one CPU word on
2133 32-bit (and two on 64-bit.)
2135 This reduces memory consumption by 134 kB (on 64-bit) when loading the
2138 * platform/ScrollableArea.h:
2139 (WebCore::ScrollableArea::verticalScrollElasticity):
2140 (WebCore::ScrollableArea::horizontalScrollElasticity):
2141 (WebCore::ScrollableArea::scrollbarOverlayStyle):
2143 Cast the now-bitfield members to the appropriate enum types.
2145 * rendering/RenderLayer.h:
2146 * rendering/RenderLayer.cpp:
2147 (WebCore::RenderLayer::RenderLayer):
2149 Move shouldBeNormalFlowOnly() call out of initializer list since it
2150 depends on m_renderer being initialized.
2152 2011-10-10 Cary Clark <caryclark@google.com>
2154 [Skia on Chromium Mac] Set canExpandAroundIdeographsInComplexText to true
2155 https://bugs.webkit.org/show_bug.cgi?id=69656
2156 https://bugs.webkit.org/show_bug.cgi?id=62987
2157 https://bugs.webkit.org/show_bug.cgi?id=62889
2159 Reviewed by Stephen White.
2161 Skia on Linux and Windows uses different font engines from
2162 Skia on Mac. After determining that the underlying CoreText
2163 can handle it, enabling this allows justification to work
2166 Tests: fast/text/justify-ideograph-complex.html
2168 * platform/graphics/skia/FontSkia.cpp:
2169 (WebCore::Font::canExpandAroundIdeographsInComplexText):
2171 2011-10-10 Ilya Tikhonovsky <loislo@chromium.org>
2173 Web Inspector: memory leak in Resource panel.
2174 https://bugs.webkit.org/show_bug.cgi?id=69754
2176 Reviewed by Yury Semikhatsky.
2178 * inspector/front-end/ResourcesPanel.js:
2179 (WebInspector.ResourcesPanel.prototype.reset):
2180 * inspector/front-end/View.js:
2181 (WebInspector.View.prototype.childViews):
2183 2011-10-06 Pavel Podivilov <podivilov@chromium.org>
2185 Web Inspector: saving JavaScript after live edit resets scroller position.
2186 https://bugs.webkit.org/show_bug.cgi?id=69340
2188 Do not recreate SourceFrame when content is changed. Instead, update text model in existing SourceFrame.
2190 Reviewed by Yury Semikhatsky.
2192 * inspector/front-end/DebuggerPresentationModel.js:
2193 (WebInspector.DebuggerPresentationModel.prototype.setScriptSource.didEditScriptSource):
2194 (WebInspector.DebuggerPresentationModel.prototype.setScriptSource):
2195 * inspector/front-end/JavaScriptSourceFrame.js:
2196 (WebInspector.JavaScriptSourceFrame):
2197 * inspector/front-end/RawSourceCode.js:
2198 (WebInspector.RawSourceCode.prototype.setCompilerSourceMappingProvider):
2199 * inspector/front-end/SourceFrame.js:
2200 (WebInspector.SourceFrame.prototype._setReadOnly):
2201 (WebInspector.SourceFrame.prototype.contentChanged):
2202 * inspector/front-end/UISourceCode.js:
2203 (WebInspector.UISourceCode.prototype.contentChanged):
2205 2011-10-10 Ilya Tikhonovsky <loislo@chromium.org>
2207 Unreviewed test fix for r97050.
2209 * inspector/front-end/DebuggerPresentationModel.js:
2210 (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
2212 2011-10-10 Andreas Kling <kling@webkit.org>
2214 Shrink RenderListItem on 64-bit.
2215 https://bugs.webkit.org/show_bug.cgi?id=69751
2217 Reviewed by Kenneth Rohde Christiansen.
2219 Rearrange members to utilize the padding at the end of RenderBlock.
2220 This shrinks RenderListItem by 8 bytes on 64-bit, reducing memory consumption
2221 by 60 kB when loading the full HTML5 spec.
2223 * rendering/RenderListItem.h:
2225 2011-10-10 Andreas Kling <kling@webkit.org>
2227 Shrink RootInlineBox.
2228 https://bugs.webkit.org/show_bug.cgi?id=69707
2230 Reviewed by Antti Koivisto.
2232 Move the bitfields from RootInlineBox up into its base class (InlineFlowBox.)
2233 This shrinks RootInlineBox by one CPU word without growing InlineFlowBox.
2234 Enum bitfields were changed to "unsigned" for the MSVC signedness quirk.
2236 Also move one 32-bit member to the head of RootInlineBox so it falls into the
2237 padding at the end of InlineFlowBox on 64-bit.
2239 This reduces memory consumption by 780 kB (on 64-bit) when loading the full
2242 * rendering/InlineFlowBox.h:
2243 (WebCore::InlineFlowBox::InlineFlowBox):
2244 * rendering/RootInlineBox.cpp:
2245 (WebCore::RootInlineBox::RootInlineBox):
2246 (WebCore::RootInlineBox::lineBreakBidiStatus):
2247 * rendering/RootInlineBox.h:
2249 2011-10-10 Pavel Podivilov <podivilov@chromium.org>
2251 Unreviewed, attempt to fix chromium mac build after r97034.
2253 * platform/ScrollAnimatorNone.h:
2255 2011-10-10 Ilya Tikhonovsky <loislo@chromium.org>
2257 Web Inspector: small memory leak in scripts panel.
2258 https://bugs.webkit.org/show_bug.cgi?id=69744
2260 Scripts panel doesn't clean the list of child views.
2262 Reviewed by Yury Semikhatsky.
2264 * inspector/front-end/DebuggerPresentationModel.js:
2265 (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
2266 * inspector/front-end/ScriptsPanel.js:
2267 (WebInspector.ScriptsPanel.prototype._uiSourceCodeRemoved):
2269 2011-10-07 Yury Semikhatsky <yurys@chromium.org>
2271 Web Inspector: allow to start WorkerContext paused
2272 https://bugs.webkit.org/show_bug.cgi?id=69635
2274 Allow to pause WorkerContext on start.
2276 Reviewed by Pavel Feldman.
2278 * bindings/v8/ScriptDebugServer.cpp:
2279 (WebCore::ScriptDebugServer::setPauseOnNextStatement):
2280 * bindings/v8/WorkerScriptDebugServer.cpp:
2281 (WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
2282 * bindings/v8/WorkerScriptDebugServer.h:
2283 * inspector/InspectorController.cpp:
2284 (WebCore::InspectorController::InspectorController):
2285 * inspector/InspectorInstrumentation.cpp:
2286 (WebCore::InspectorInstrumentation::willEvaluateWorkerScript):
2287 * inspector/InspectorInstrumentation.h:
2288 * inspector/InspectorRuntimeAgent.cpp:
2289 (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
2290 (WebCore::InspectorRuntimeAgent::~InspectorRuntimeAgent):
2291 (WebCore::InspectorRuntimeAgent::pauseWorkerContext): this method will start
2292 running worker message loop in "debug" mode, i.e. it will process only inspector
2293 tasks until method InspectorRuntimeAgent::resume is called.
2294 (WebCore::InspectorRuntimeAgent::resume):
2295 * inspector/InspectorRuntimeAgent.h:
2296 * inspector/WorkerDebuggerAgent.cpp:
2297 * inspector/WorkerDebuggerAgent.h:
2298 * inspector/WorkerInspectorController.cpp:
2299 (WebCore::WorkerInspectorController::WorkerInspectorController):
2300 (WebCore::WorkerInspectorController::resume): method which is called from WebKit layer
2301 when it is known that inspector state was restored and it is OK to resume worker execution.
2302 * inspector/WorkerInspectorController.h:
2303 * workers/DedicatedWorkerThread.cpp:
2304 (WebCore::DedicatedWorkerThread::create):
2305 (WebCore::DedicatedWorkerThread::DedicatedWorkerThread):
2306 * workers/DedicatedWorkerThread.h:
2307 * workers/SharedWorkerThread.cpp:
2308 (WebCore::SharedWorkerThread::create):
2309 (WebCore::SharedWorkerThread::SharedWorkerThread):
2310 * workers/SharedWorkerThread.h:
2311 * workers/WorkerMessagingProxy.cpp:
2312 (WebCore::WorkerMessagingProxy::startWorkerContext):
2313 (WebCore::WorkerMessagingProxy::disconnectFromInspector):
2314 (WebCore::WorkerMessagingProxy::sendMessageToInspector):
2315 * workers/WorkerThread.cpp:
2316 (WebCore::WorkerThreadStartupData::create):
2317 (WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
2318 (WebCore::WorkerThread::WorkerThread): WorkerThread is passed a booleand flag indicating
2319 whether the context should be paused and wait for explicit resume command before it
2320 starts running its script.
2321 (WebCore::WorkerThread::workerThread):
2322 * workers/WorkerThread.h:
2324 2011-10-10 Sheriff Bot <webkit.review.bot@gmail.com>
2326 Unreviewed, rolling out r97045.
2327 http://trac.webkit.org/changeset/97045
2328 https://bugs.webkit.org/show_bug.cgi?id=69746
2330 makes apple bots very crashy :( (Requested by kling on
2333 * css/CSSStyleApplyProperty.cpp:
2334 (WebCore::ApplyPropertyColor::applyInheritValue):
2335 * page/animation/AnimationBase.cpp:
2336 (WebCore::PropertyWrapperMaybeInvalidColor::PropertyWrapperMaybeInvalidColor):
2337 (WebCore::PropertyWrapperSVGPaint::PropertyWrapperSVGPaint):
2338 (WebCore::AnimationBase::ensurePropertyMap):
2339 * platform/graphics/Color.h:
2340 (WebCore::Color::Color):
2341 * rendering/style/BorderValue.h:
2342 (WebCore::BorderValue::BorderValue):
2343 (WebCore::BorderValue::isTransparent):
2344 (WebCore::BorderValue::operator==):
2345 (WebCore::BorderValue::color):
2346 * rendering/style/OutlineValue.h:
2347 (WebCore::OutlineValue::operator==):
2348 * rendering/style/RenderStyle.h:
2349 (WebCore::InheritedFlags::setBorderLeftColor):
2350 (WebCore::InheritedFlags::setBorderRightColor):
2351 (WebCore::InheritedFlags::setBorderTopColor):
2352 (WebCore::InheritedFlags::setBorderBottomColor):
2353 (WebCore::InheritedFlags::setOutlineColor):
2354 (WebCore::InheritedFlags::setColumnRuleColor):
2355 (WebCore::InheritedFlags::fillPaintColor):
2356 (WebCore::InheritedFlags::strokePaintColor):
2357 (WebCore::InheritedFlags::borderLeftColor):
2358 (WebCore::InheritedFlags::borderRightColor):
2359 (WebCore::InheritedFlags::borderTopColor):
2360 (WebCore::InheritedFlags::borderBottomColor):
2361 (WebCore::InheritedFlags::backgroundColor):
2362 (WebCore::InheritedFlags::color):
2363 (WebCore::InheritedFlags::columnRuleColor):
2364 (WebCore::InheritedFlags::outlineColor):
2365 (WebCore::InheritedFlags::textEmphasisColor):
2366 (WebCore::InheritedFlags::textFillColor):
2367 (WebCore::InheritedFlags::textStrokeColor):
2368 (WebCore::InheritedFlags::stopColor):
2369 (WebCore::InheritedFlags::floodColor):
2370 (WebCore::InheritedFlags::lightingColor):
2372 2011-10-06 Andreas Kling <kling@webkit.org>
2375 https://bugs.webkit.org/show_bug.cgi?id=69521
2377 Reviewed by Antti Koivisto.
2379 Unroll BorderValue's Color member so we can pack the color's validity flag
2380 in BorderValue's bitfield.
2382 This shrinks BorderValue by 32 bit, which in turn shrinks BorderData by
2383 16 bytes. This reduces memory consumption by 760 kB when loading the full
2386 * platform/graphics/Color.h:
2387 (WebCore::Color::Color):
2389 Allow construction of Color objects with specific validity.
2391 * rendering/style/BorderValue.h:
2392 (WebCore::BorderValue::BorderValue):
2393 (WebCore::BorderValue::isTransparent):
2394 (WebCore::BorderValue::operator==):
2395 (WebCore::BorderValue::setColor):
2396 (WebCore::BorderValue::color):
2397 * rendering/style/OutlineValue.h:
2398 (WebCore::OutlineValue::operator==):
2400 Unroll m_color into BorderValue by splitting it into an RGBA32 and a bool.
2401 Made those variables private and added color(), setColor() accessors.
2403 * rendering/style/RenderStyle.h:
2404 (WebCore::InheritedFlags::setBorderLeftColor):
2405 (WebCore::InheritedFlags::setBorderRightColor):
2406 (WebCore::InheritedFlags::setBorderTopColor):
2407 (WebCore::InheritedFlags::setBorderBottomColor):
2408 (WebCore::InheritedFlags::setOutlineColor):
2409 (WebCore::InheritedFlags::setColumnRuleColor):
2411 Added a SET_BORDERVALUE_COLOR macro and use that instead of SET_VAR
2412 when setting BorderValue colors.
2414 (WebCore::InheritedFlags::fillPaintColor):
2415 (WebCore::InheritedFlags::strokePaintColor):
2416 (WebCore::InheritedFlags::borderLeftColor):
2417 (WebCore::InheritedFlags::borderRightColor):
2418 (WebCore::InheritedFlags::borderTopColor):
2419 (WebCore::InheritedFlags::borderBottomColor):
2420 (WebCore::InheritedFlags::backgroundColor):
2421 (WebCore::InheritedFlags::color):
2422 (WebCore::InheritedFlags::columnRuleColor):
2423 (WebCore::InheritedFlags::outlineColor):
2424 (WebCore::InheritedFlags::textEmphasisColor):
2425 (WebCore::InheritedFlags::textFillColor):
2426 (WebCore::InheritedFlags::textStrokeColor):
2427 (WebCore::InheritedFlags::stopColor):
2428 (WebCore::InheritedFlags::floodColor):
2429 (WebCore::InheritedFlags::lightingColor):
2431 Made color getters return "Color" instead of "const Color&" since
2432 BorderValue no longer has an actual object to return the reference to.
2434 * css/CSSStyleApplyProperty.cpp:
2435 (WebCore::ApplyPropertyColor::applyInheritValue):
2436 * page/animation/AnimationBase.cpp:
2437 (WebCore::PropertyWrapperColor::PropertyWrapperColor):
2438 (WebCore::PropertyWrapperColor::blend):
2439 (WebCore::PropertyWrapperMaybeInvalidColor::PropertyWrapperMaybeInvalidColor):
2440 (WebCore::PropertyWrapperSVGPaint::PropertyWrapperSVGPaint):
2441 (WebCore::AnimationBase::ensurePropertyMap):
2443 Adapt to RenderStyle color getters now returning "Color" instead of
2446 2011-10-09 Yury Semikhatsky <yurys@chromium.org>
2448 Missing m_notificationPresenter initialization in WorkerThread constructor
2449 https://bugs.webkit.org/show_bug.cgi?id=69741
2451 Added missing m_notificationPresenter(0)
2453 Reviewed by Pavel Feldman.
2455 * workers/WorkerThread.cpp:
2456 (WebCore::WorkerThread::WorkerThread):
2458 2011-10-09 Daniel Bates <dbates@webkit.org>
2460 Another attempt to fix the Leopard Intel Debug build after changeset 97034 <http://trac.webkit.org/changeset/97034>
2461 (https://bugs.webkit.org/show_bug.cgi?id=68035)
2463 * page/FrameView.cpp:
2464 (WebCore::FrameView::zoomAnimatorTransformChanged): Explicitly convert a double precision result
2465 to a single precision result. I am unsure if this fix is correct. We need to look into this some
2466 more. See <https://bugs.webkit.org/show_bug.cgi?id=69739> for more details.
2468 2011-10-09 Daniel Bates <dbates@webkit.org>
2470 Attempt to fix the Leopard Intel Debug build after changeset 97034 <http://trac.webkit.org/changeset/97034>
2471 (https://bugs.webkit.org/show_bug.cgi?id=68035)
2473 * page/FrameView.cpp:
2474 (WebCore::FrameView::zoomAnimatorTransformChanged): Explicitly convert double precision result to
2475 an integer. I am unsure if this fix is correct. We need to look into this some more. See
2476 <https://bugs.webkit.org/show_bug.cgi?id=69739> for more details.
2478 2011-10-09 Luke Macpherson <macpherson@chromium.org>
2480 Fix Lion, Leopard and Snow Leopard builds after changeset 97034 <http://trac.webkit.org/changeset/97034>
2481 (https://bugs.webkit.org/show_bug.cgi?id=68035)
2482 https://bugs.webkit.org/show_bug.cgi?id=69735
2484 Reviewed by Daniel Bates.
2486 * testing/Internals.cpp:
2487 Mark unused parameters to prevent compile errors when GESTURE_EVENTS and SMOOTH_SCROLLING are disabled.
2488 (WebCore::Internals::setEnableScrollAnimator):
2489 (WebCore::Internals::setZoomAnimatorTransform):
2490 (WebCore::Internals::setZoomParameters):
2492 2011-10-09 Kent Tamura <tkent@chromium.org>
2494 Remove redundant code of HTMLSelectElement.
2495 https://bugs.webkit.org/show_bug.cgi?id=69701
2497 Reviewed by Darin Adler.
2499 No new tests, just a refactoring.
2501 * html/HTMLSelectElement.cpp:
2502 (WebCore::HTMLSelectElement::deselectItems):
2503 Rename inner deselectItems() to deselectItemsWithoutValidation().
2504 (WebCore::HTMLSelectElement::setSelectedIndex):
2505 Rename a callsite of another setSelectedIndex() to setSelectedIndexInternal().
2506 (WebCore::HTMLSelectElement::setSelectedIndexByUser):
2507 ditto, and update a callsite of updateSelectedState().
2508 (WebCore::HTMLSelectElement::listBoxSelectItem):
2509 Update a callsite of updateSelectedState().
2510 (WebCore::HTMLSelectElement::activeSelectionEndListIndex):
2511 Update a callsite of lastSelectedListIndex().
2512 (WebCore::HTMLSelectElement::selectAll):
2513 Update callsites of functions which are changed to non-static.
2514 (WebCore::HTMLSelectElement::saveLastSelection):
2515 Merge a static function and a non-static function.
2516 (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex): ditto.
2517 (WebCore::HTMLSelectElement::setActiveSelectionEndIndex): ditto.
2518 (WebCore::HTMLSelectElement::updateListBoxSelection): ditto.
2519 (WebCore::HTMLSelectElement::listBoxOnChange): ditto.
2520 (WebCore::HTMLSelectElement::menuListOnChange): ditto.
2521 (WebCore::HTMLSelectElement::scrollToSelection): ditto.
2522 (WebCore::HTMLSelectElement::setOptionsChangedOnRenderer): Made this non-static.
2523 (WebCore::HTMLSelectElement::setRecalcListItems):
2524 Merge a static function and a non-static function.
2525 (WebCore::HTMLSelectElement::selectedIndex): ditto.
2526 (WebCore::HTMLSelectElement::setSelectedIndexInternal):
2527 Made this non-static, and renamed from setSelectedIndex() because
2528 of conflict with an existing function.
2529 (WebCore::HTMLSelectElement::optionToListIndex):
2530 Merge a static function and a non-static function.
2531 (WebCore::HTMLSelectElement::listToOptionIndex): ditto.
2532 (WebCore::HTMLSelectElement::dispatchFocusEvent):
2533 Update a callsite of function which is changed to no-staic.
2534 (WebCore::HTMLSelectElement::dispatchBlurEvent): ditto.
2535 (WebCore::HTMLSelectElement::deselectItemsWithoutValidation):
2536 Made this non-static, and renamed from deselectItems() to avoid conflict.
2537 (WebCore::HTMLSelectElement::restoreFormControlState):
2538 Update a callsite of function which is changed to no-staic.
2539 (WebCore::HTMLSelectElement::reset): ditto.
2540 (WebCore::HTMLSelectElement::platformHandleKeydownEvent): Made this non-static.
2541 (WebCore::HTMLSelectElement::menuListDefaultEventHandler): ditto.
2542 (WebCore::HTMLSelectElement::updateSelectedState): ditto.
2543 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): ditto.
2544 (WebCore::HTMLSelectElement::defaultEventHandler):
2545 Merged a static function and a non-static function.
2546 (WebCore::HTMLSelectElement::lastSelectedListIndex): Made this non-static.
2547 (WebCore::HTMLSelectElement::typeAheadFind): ditto.
2548 (WebCore::HTMLSelectElement::accessKeySetSelectedIndex): ditto.
2549 * html/HTMLSelectElement.h:
2550 * html/HTMLSelectElementWin.cpp:
2551 (WebCore::HTMLSelectElement::platformHandleKeydownEvent): Made this non-static.
2553 2011-10-09 Adam Barth <abarth@webkit.org>
2555 CSP should log unrecognized directives to the console
2556 https://bugs.webkit.org/show_bug.cgi?id=69728
2558 Reviewed by Sam Weinig.
2560 Several of the web developers who have been experimenting with CSP have
2561 run into trouble with directives we don't support. For example, one
2562 developer was confused for a while why image-src didn't do what he
2563 expected. Logging a message to the console will help these folks
2564 figure out what's going on.
2566 * page/ContentSecurityPolicy.cpp:
2567 (WebCore::ContentSecurityPolicy::reportUnrecognizedDirective):
2568 (WebCore::ContentSecurityPolicy::addDirective):
2569 * page/ContentSecurityPolicy.h:
2571 2011-10-09 W. James MacLean <wjmaclean@chromium.org>
2573 [chromium] Zoom animator front-end
2574 https://bugs.webkit.org/show_bug.cgi?id=68035
2576 Adds necessary components to ScrollAnimatorNone to support a zoom animation
2577 feature. Includes test infrastructure via testing/Internals to capture
2578 in-progress texture scaling (zoom-animator-scale-test.html) as well as a
2579 final view --- after pageScaleFactor has been applied --- in zoom-animator-scale-test2.html.
2581 Removes temporary test fields from Settings.
2583 Reviewed by Kenneth Russell.
2585 Test: platform/chromium/compositing/zoom-animator-scale-test2.html
2587 * page/EventHandler.cpp:
2588 (WebCore::EventHandler::handleGestureEvent):
2589 * page/FrameView.cpp:
2590 (WebCore::FrameView::zoomAnimatorTransformChanged):
2592 * page/Settings.cpp:
2593 (WebCore::Settings::Settings):
2595 * platform/ScrollAnimator.cpp:
2596 (WebCore::ScrollAnimator::ScrollAnimator):
2597 (WebCore::ScrollAnimator::notifyZoomChanged):
2598 (WebCore::ScrollAnimator::zoomTranslation):
2599 (WebCore::ScrollAnimator::resetZoom):
2600 (WebCore::ScrollAnimator::setZoomParametersForTest):
2601 * platform/ScrollAnimator.h:
2602 (WebCore::ScrollAnimator::zoomScale):
2603 * platform/ScrollAnimatorNone.cpp:
2604 (WebCore::ScrollAnimatorNone::ZoomData::ZoomData):
2605 (WebCore::ScrollAnimatorNone::ZoomData::animateZoom):
2606 (WebCore::ScrollAnimatorNone::ScrollAnimatorNone):
2607 (WebCore::ScrollAnimatorNone::zoom):
2608 (WebCore::ScrollAnimatorNone::handleGestureEvent):
2609 (WebCore::ScrollAnimatorNone::animationTimerFired):
2610 * platform/ScrollAnimatorNone.h:
2611 * platform/ScrollableArea.cpp:
2612 (WebCore::ScrollableArea::zoomAnimatorTransformChanged):
2613 * platform/ScrollableArea.h:
2614 * testing/Internals.cpp:
2615 (WebCore::Internals::setEnableScrollAnimator):
2616 (WebCore::Internals::setZoomAnimatorTransform):
2617 (WebCore::Internals::getPageScaleFactor):
2618 (WebCore::Internals::setZoomParameters):
2619 * testing/Internals.h:
2620 * testing/Internals.idl:
2622 2011-10-09 Dan Bernstein <mitz@apple.com>
2624 <rdar://problem/9484496> REGRESSION (WebKit2): Checkboxes and radio buttons are drawn 1 pixel too high, not repainted properly
2625 https://bugs.webkit.org/show_bug.cgi?id=69727
2627 Reviewed by Anders Carlsson.
2629 * platform/mac/ThemeMac.mm: Made WebCoreFlippedView an NSControl subclass so that the NSButtonCell
2630 used to draw checkboxes and radio buttons can make it its controlView, and consequently check and
2631 obey its flippedness.
2633 2011-10-09 Benjamin Poulain <benjamin@webkit.org>
2635 Do not compare the first glyph to itself in Font::drawGlyphBuffer()
2636 https://bugs.webkit.org/show_bug.cgi?id=69715
2638 Reviewed by Andreas Kling.
2640 When looking for glyphs with similar properties, we should
2641 skip the first one since the comparison of fontData
2642 and offset will always fail.
2644 This is covered by the existing tests.
2646 * platform/graphics/FontFastPath.cpp:
2647 (WebCore::Font::drawGlyphBuffer):
2649 2011-10-08 Justin Schuh <jschuh@chromium.org>
2651 Make ThreadGlobalData members use OwnPtr
2652 https://bugs.webkit.org/show_bug.cgi?id=69710
2654 Reviewed by Adam Barth.
2656 No functional changes. No new tests required.
2658 * platform/ThreadGlobalData.cpp:
2659 (WebCore::ThreadGlobalData::ThreadGlobalData):
2660 (WebCore::ThreadGlobalData::~ThreadGlobalData):
2661 (WebCore::ThreadGlobalData::destroy):
2662 * platform/ThreadGlobalData.h:
2664 2011-10-08 Mark Hahnenberg <mhahnenberg@apple.com>
2666 Add static version of JSCell::getConstructData
2667 https://bugs.webkit.org/show_bug.cgi?id=69673
2669 Reviewed by Geoffrey Garen.
2673 Added static version of getConstructData to all classes that
2674 override it and changed the virtual versions to call the static
2675 versions. This is the first step in de-virtualizing JSCell::getConstructData.
2677 * bindings/js/JSAudioConstructor.cpp:
2678 (WebCore::JSAudioConstructor::getConstructData):
2679 * bindings/js/JSAudioConstructor.h:
2680 * bindings/js/JSImageConstructor.cpp:
2681 (WebCore::JSImageConstructor::getConstructData):
2682 * bindings/js/JSImageConstructor.h:
2683 * bindings/js/JSOptionConstructor.cpp:
2684 (WebCore::JSOptionConstructor::getConstructData):
2685 * bindings/js/JSOptionConstructor.h:
2686 * bindings/scripts/CodeGeneratorJS.pm:
2687 (GenerateConstructorDeclaration):
2688 (GenerateConstructorDefinition):
2689 * bindings/scripts/test/JS/JSTestInterface.cpp:
2690 (WebCore::JSTestInterfaceConstructor::getConstructData):
2691 * bridge/runtime_object.cpp:
2692 (JSC::Bindings::RuntimeObject::getConstructData):
2693 * bridge/runtime_object.h:
2695 2011-10-08 Mark Hahnenberg <mhahnenberg@apple.com>
2697 Add static version of JSCell::getOwnPropertySlot
2698 https://bugs.webkit.org/show_bug.cgi?id=69593
2700 Reviewed by Geoffrey Garen.
2704 Added static version of getOwnPropertySlot to every class that overrides
2705 JSCell::getOwnPropertySlot. The virtual versions now call the static versions.
2706 This is the first step in de-virtualizing JSCell::getOwnPropertySlot.
2708 * bindings/js/JSDOMWindowShell.cpp:
2709 (WebCore::JSDOMWindowShell::getOwnPropertySlot):
2710 * bindings/js/JSDOMWindowShell.h:
2711 * bridge/objc/objc_runtime.h:
2712 * bridge/objc/objc_runtime.mm:
2713 (JSC::Bindings::ObjcFallbackObjectImp::getOwnPropertySlot):
2714 * bridge/qt/qt_runtime.cpp:
2715 (JSC::Bindings::QtRuntimeMetaMethod::getOwnPropertySlot):
2716 (JSC::Bindings::QtRuntimeConnectionMethod::getOwnPropertySlot):
2717 * bridge/qt/qt_runtime.h:
2718 * bridge/runtime_array.cpp:
2719 (JSC::RuntimeArray::getOwnPropertySlot):
2720 * bridge/runtime_array.h:
2721 * bridge/runtime_method.cpp:
2722 (JSC::RuntimeMethod::getOwnPropertySlot):
2723 * bridge/runtime_method.h:
2724 * bridge/runtime_object.cpp:
2725 (JSC::Bindings::RuntimeObject::getOwnPropertySlot):
2726 * bridge/runtime_object.h:
2728 2011-10-03 Carlos Garcia Campos <cgarcia@igalia.com> and Martin Robinson <mrobinson@igalia.com>
2730 [GTK] Implement drag and drop support in WebKit2
2731 https://bugs.webkit.org/show_bug.cgi?id=63706
2733 Reviewed by Philippe Normand.
2735 * platform/DragData.h:
2736 * platform/gtk/DataObjectGtk.cpp:
2737 (WebCore::DataObjectGtk::text): Mark as const.
2738 (WebCore::DataObjectGtk::markup): Ditto.
2739 (WebCore::DataObjectGtk::urlLabel): Ditto.
2740 * platform/gtk/DataObjectGtk.h: Remove unused member
2742 (WebCore::DataObjectGtk::url): Mark as const.
2743 (WebCore::DataObjectGtk::uriList): Ditto.
2744 (WebCore::DataObjectGtk::filenames): Ditto.
2745 (WebCore::DataObjectGtk::image): Ditto.
2746 (WebCore::DataObjectGtk::hasText): Ditto.
2747 (WebCore::DataObjectGtk::hasMarkup): Ditto.
2748 (WebCore::DataObjectGtk::hasURIList): Ditto.
2749 (WebCore::DataObjectGtk::hasURL): Ditto.
2750 (WebCore::DataObjectGtk::hasFilenames): Ditto.
2751 (WebCore::DataObjectGtk::hasImage): Ditto.
2752 * platform/gtk/DragIcon.cpp: Added. A helper which takes care of
2753 creating a transparent drag window for drags.
2754 * platform/gtk/DragIcon.h: Added.
2756 2011-10-08 Abhishek Arya <inferno@chromium.org>
2758 Add support for ADDRESS_SANITIZER in RenderArena
2759 allocate, free calls.
2760 https://bugs.webkit.org/show_bug.cgi?id=69636
2762 Reviewed by Darin Adler.
2764 Use malloc, free directly without using the debug header. Otherwise,
2765 we won't be able to detect out of bounds access in debug header.
2767 * rendering/RenderArena.cpp:
2768 (WebCore::RenderArena::allocate):
2769 (WebCore::RenderArena::free):
2771 2011-10-08 Kent Tamura <tkent@chromium.org>
2773 Remove some static functions of HTMLSelectElement
2774 https://bugs.webkit.org/show_bug.cgi?id=69621
2776 Reviewed by Darin Adler.
2778 Merge a static function and the corresponding non-static member function
2779 into one function if there are no other callers of the static function.
2781 No new tests, just a refactoring.
2783 * html/HTMLFormControlElement.h:
2784 Make formControlName() protected because it is called from
2786 * html/HTMLSelectElement.cpp:
2787 (WebCore::HTMLSelectElement::parseMappedAttribute):
2788 Remove two argument of parseMultipleAttribute().
2789 (WebCore::HTMLSelectElement::selectAll):
2790 Merged the static function and the member function.
2791 (WebCore::HTMLSelectElement::dispatchFocusEvent): ditto.
2792 (WebCore::HTMLSelectElement::dispatchBlurEvent): ditto.
2793 (WebCore::HTMLSelectElement::saveFormControlState): ditto.
2794 (WebCore::HTMLSelectElement::restoreFormControlState):
2795 (WebCore::HTMLSelectElement::parseMultipleAttribute):
2796 - Make this non-static member function.
2797 - Use reattachIfAttached().
2798 (WebCore::HTMLSelectElement::appendFormData): Merged.
2799 (WebCore::HTMLSelectElement::reset): ditto.
2800 (WebCore::HTMLSelectElement::insertedIntoTree): ditto.
2801 (WebCore::HTMLSelectElement::accessKeySetSelectedIndex): ditto.
2802 (WebCore::HTMLSelectElement::length): Merged with optionCount().
2803 * html/HTMLSelectElement.h:
2805 2011-10-08 Sheriff Bot <webkit.review.bot@gmail.com>
2807 Unreviewed, rolling out r96996.
2808 http://trac.webkit.org/changeset/96996
2809 https://bugs.webkit.org/show_bug.cgi?id=69697
2811 It broke all tests on the Qt bot (Requested by Ossy_night on
2815 * bindings/js/JSCallbackData.cpp:
2816 (WebCore::JSCallbackData::invokeCallback):
2817 * bindings/js/JSCustomXPathNSResolver.cpp:
2818 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
2819 * bindings/js/JSErrorHandler.cpp:
2820 (WebCore::JSErrorHandler::handleEvent):
2821 * bindings/js/JSEventListener.cpp:
2822 (WebCore::JSEventListener::handleEvent):
2823 * bindings/js/JSHTMLAllCollectionCustom.cpp:
2824 (WebCore::JSHTMLAllCollection::getCallDataVirtual):
2825 * bindings/js/JSHTMLAppletElementCustom.cpp:
2826 (WebCore::JSHTMLAppletElement::getCallDataVirtual):
2827 * bindings/js/JSHTMLEmbedElementCustom.cpp:
2828 (WebCore::JSHTMLEmbedElement::getCallDataVirtual):
2829 * bindings/js/JSHTMLObjectElementCustom.cpp:
2830 (WebCore::JSHTMLObjectElement::getCallDataVirtual):
2831 * bindings/js/JSInjectedScriptHostCustom.cpp:
2832 (WebCore::JSInjectedScriptHost::evaluate):
2833 * bindings/js/JSPluginElementFunctions.cpp:
2834 (WebCore::runtimeObjectGetCallData):
2835 * bindings/scripts/CodeGeneratorJS.pm:
2837 * bridge/objc/objc_runtime.h:
2838 * bridge/objc/objc_runtime.mm:
2839 (JSC::Bindings::ObjcFallbackObjectImp::getCallDataVirtual):
2840 * bridge/qt/qt_runtime.cpp:
2841 (JSC::Bindings::QtRuntimeMetaMethod::getCallDataVirtual):
2842 (JSC::Bindings::QtRuntimeConnectionMethod::call):
2843 (JSC::Bindings::QtRuntimeConnectionMethod::getCallDataVirtual):
2844 (JSC::Bindings::isJavaScriptFunction):
2845 * bridge/qt/qt_runtime.h:
2846 * bridge/runtime_method.cpp:
2847 (JSC::RuntimeMethod::getCallDataVirtual):
2848 * bridge/runtime_method.h:
2849 * bridge/runtime_object.cpp:
2850 (JSC::Bindings::RuntimeObject::getCallDataVirtual):
2851 * bridge/runtime_object.h:
2853 2011-10-08 Ryosuke Niwa <rniwa@webkit.org>
2855 Snow Leopard build fix after r96976. Apparently we just need a full rebuild.
2859 2011-10-07 Mark Hahnenberg <mhahnenberg@apple.com>
2861 Add static version of JSCell::deleteProperty
2862 https://bugs.webkit.org/show_bug.cgi?id=69659
2864 Reviewed by Geoffrey Garen.
2868 Added static version of both versions of put to all classes that
2869 override them and changed the virtual versions to call the static
2870 versions. This is the first step in de-virtualizing JSCell::deleteProperty.
2872 * bridge/objc/objc_runtime.h:
2873 * bridge/objc/objc_runtime.mm:
2874 (JSC::Bindings::ObjcFallbackObjectImp::deleteProperty):
2875 * bridge/runtime_array.cpp:
2876 (JSC::RuntimeArray::deleteProperty):
2877 * bridge/runtime_array.h:
2878 * bridge/runtime_object.cpp:
2879 (JSC::Bindings::RuntimeObject::deleteProperty):
2880 * bridge/runtime_object.h:
2882 2011-10-07 Justin Schuh <jschuh@chromium.org>
2884 Make isXMLMIMEType regex use TLS
2885 https://bugs.webkit.org/show_bug.cgi?id=69665
2887 Reviewed by Adam Barth.
2889 Test: fast/workers/worker-multi-startup.html
2891 * dom/DOMImplementation.cpp:
2892 (WebCore::XMLMIMETypeRegExp::XMLMIMETypeRegExp):
2893 (WebCore::XMLMIMETypeRegExp::~XMLMIMETypeRegExp):
2894 (WebCore::XMLMIMETypeRegExp::isXMLMIMEType):
2895 (WebCore::DOMImplementation::isXMLMIMEType):
2896 * dom/DOMImplementation.h:
2897 * platform/ThreadGlobalData.cpp:
2898 (WebCore::ThreadGlobalData::ThreadGlobalData):
2899 (WebCore::ThreadGlobalData::destroy):
2900 * platform/ThreadGlobalData.h:
2901 (WebCore::ThreadGlobalData::xmlTypeRegExp):
2903 2011-10-07 Sheriff Bot <webkit.review.bot@gmail.com>
2905 Unreviewed, rolling out r96847.
2906 http://trac.webkit.org/changeset/96847
2907 https://bugs.webkit.org/show_bug.cgi?id=69684
2909 may have caused memory regression on win chromium (Requested
2910 by simonjam on #webkit).
2912 * platform/graphics/chromium/FontChromiumWin.cpp:
2913 (WebCore::Font::drawGlyphs):
2915 2011-10-07 Mark Hahnenberg <mhahnenberg@apple.com>
2917 Remove getCallDataVirtual methods
2918 https://bugs.webkit.org/show_bug.cgi?id=69186
2920 Reviewed by Geoffrey Garen.
2924 Removed all getCallDataVirtual methods and replaced their call sites
2925 with an explicit lookup in the MethodTable.
2928 * bindings/js/JSCallbackData.cpp:
2929 (WebCore::JSCallbackData::invokeCallback):
2930 * bindings/js/JSCustomXPathNSResolver.cpp:
2931 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
2932 * bindings/js/JSErrorHandler.cpp:
2933 (WebCore::JSErrorHandler::handleEvent):
2934 * bindings/js/JSEventListener.cpp:
2935 (WebCore::JSEventListener::handleEvent):
2936 * bindings/js/JSHTMLAllCollectionCustom.cpp:
2937 * bindings/js/JSHTMLAppletElementCustom.cpp:
2938 * bindings/js/JSHTMLEmbedElementCustom.cpp:
2939 * bindings/js/JSHTMLObjectElementCustom.cpp:
2940 * bindings/js/JSInjectedScriptHostCustom.cpp:
2941 (WebCore::JSInjectedScriptHost::evaluate):
2942 * bindings/js/JSPluginElementFunctions.cpp:
2943 (WebCore::runtimeObjectGetCallData):
2944 * bindings/scripts/CodeGeneratorJS.pm:
2946 * bridge/objc/objc_runtime.h:
2947 * bridge/objc/objc_runtime.mm:
2948 * bridge/qt/qt_runtime.cpp:
2949 (JSC::Bindings::QtRuntimeConnectionMethod::call):
2950 (JSC::Bindings::isJavaScriptFunction):
2951 * bridge/qt/qt_runtime.h:
2952 (JSC::Bindings::QtRuntimeMetaMethod::createStructure):
2953 (JSC::Bindings::QtRuntimeConnectionMethod::createStructure):
2954 * bridge/runtime_method.cpp:
2955 * bridge/runtime_method.h:
2956 * bridge/runtime_object.cpp:
2957 * bridge/runtime_object.h:
2959 2011-10-07 Mark Hahnenberg <mhahnenberg@apple.com>
2961 Add static version of JSCell::put
2962 https://bugs.webkit.org/show_bug.cgi?id=69382
2964 Reviewed by Geoffrey Garen.
2968 Added static version of both versions of put to all classes that
2969 override them and changed the virtual versions to call the static
2972 * bindings/scripts/CodeGeneratorJS.pm:
2974 (GenerateImplementation):
2975 * bindings/scripts/test/JS/JSTestObj.cpp:
2976 (WebCore::JSTestObj::put):
2977 * bindings/scripts/test/JS/JSTestObj.h:
2978 * bridge/objc/objc_runtime.h:
2979 * bridge/objc/objc_runtime.mm:
2980 (JSC::Bindings::ObjcFallbackObjectImp::put):
2981 * bridge/runtime_array.cpp:
2982 (JSC::RuntimeArray::put):
2983 * bridge/runtime_array.h:
2984 * bridge/runtime_object.cpp:
2985 (JSC::Bindings::RuntimeObject::put):
2986 * bridge/runtime_object.h:
2988 2011-10-07 Anantanarayanan G Iyengar <ananta@chromium.org>
2990 https://bugs.webkit.org/show_bug.cgi?id=69471
2992 We now wrap the window script NPObject which is requested by NPAPI plugins for
2993 scripting. The wrapped NPObject pointer maintains a weak reference to the
2994 window script NPObject and is cleared out when the window script object is destroyed.
2995 The NPObject wrapper is destroyed when the last outstanding reference is released.
2997 Reviewed by Nate Chapin.
2999 No tests added as there is no change in functionality.
3002 * bindings/v8/NPObjectWrapper.cpp: Added.
3003 (WebCore::NPObjectWrapper::NPObjectWrapper):
3004 (WebCore::NPObjectWrapper::create):
3005 (WebCore::NPObjectWrapper::clear):
3006 (WebCore::NPObjectWrapper::getWrapper):
3007 (WebCore::NPObjectWrapper::getUnderlyingNPObject):
3008 (WebCore::NPObjectWrapper::getObjectForCall):
3009 (WebCore::NPObjectWrapper::NPAllocate):
3010 (WebCore::NPObjectWrapper::NPDeallocate):
3011 (WebCore::NPObjectWrapper::NPPInvalidate):
3012 (WebCore::NPObjectWrapper::NPHasMethod):
3013 (WebCore::NPObjectWrapper::NPInvoke):
3014 (WebCore::NPObjectWrapper::NPInvokeDefault):
3015 (WebCore::NPObjectWrapper::NPHasProperty):
3016 (WebCore::NPObjectWrapper::NPGetProperty):
3017 (WebCore::NPObjectWrapper::NPSetProperty):
3018 (WebCore::NPObjectWrapper::NPRemoveProperty):
3019 (WebCore::NPObjectWrapper::NPNEnumerate):
3020 (WebCore::NPObjectWrapper::NPNConstruct):
3021 (WebCore::NPObjectWrapper::NPInvokePrivate):
3022 * bindings/v8/NPObjectWrapper.h: Added.
3023 * bindings/v8/NPV8Object.cpp:
3024 (_NPN_EvaluateHelper):
3025 * bindings/v8/ScriptController.cpp:
3026 (WebCore::ScriptController::ScriptController):
3027 (WebCore::ScriptController::clearScriptObjects):
3028 (WebCore::ScriptController::windowScriptNPObject):
3029 * bindings/v8/ScriptController.h:
3031 2011-10-07 Antoine Labour <piman@chromium.org>
3033 Webkit API for compositor
3034 https://bugs.webkit.org/show_bug.cgi?id=69107
3036 Reviewed by Darin Fisher.
3038 Covered by existing compositing tests.
3040 * platform/graphics/chromium/ContentLayerChromium.h:
3042 2011-10-07 Ben Wells <benwells@chromium.org>
3044 CSS text-transform should apply to select elements
3045 https://bugs.webkit.org/show_bug.cgi?id=69503
3047 Reviewed by Ojan Vafai.
3049 Select elements are drawn in two ways depending on whether they are multiple and what their size is.
3050 Neither method previously handled text-transforms. Both of these rendering styles are now updated to transform
3051 their text correctly.
3053 Test: fast/css/text-transform-select.html
3055 * rendering/RenderListBox.cpp:
3056 (WebCore::RenderListBox::updateFromElement):
3057 (WebCore::RenderListBox::paintItemForeground):
3058 * rendering/RenderMenuList.cpp:
3059 (WebCore::RenderMenuList::updateOptionsWidth):
3060 (WebCore::RenderMenuList::setText):
3061 (WebCore::RenderMenuList::itemText):
3062 * rendering/RenderText.cpp:
3063 (WebCore::makeCapitalized):
3064 (WebCore::applyTextTransform):
3065 (WebCore::RenderText::setTextInternal):
3066 (WebCore::RenderText::textWithoutTranscoding):
3067 * rendering/RenderText.h:
3069 2011-10-07 Tony Chang <tony@chromium.org>
3071 fix a crash when loading non-html multipart data
3072 https://bugs.webkit.org/show_bug.cgi?id=69675
3074 Reviewed by Adam Barth.
3076 setupForReplaceByMIMEType calls DocumentWriter::end(). This leads to
3077 a crash on Mac because WebHTMLRepresentation() calls commitLoad(nil),
3078 which tries to write to the DocumentWriter. By just inlining the code
3079 to load the last page, we avoid this crash (and makes the non-html
3080 multipart code more like the html multipart code).
3082 * loader/DocumentLoader.cpp:
3083 (WebCore::DocumentLoader::maybeFinishLoadingMultipartContent):
3085 2011-10-07 Sergey Glazunov <serg.glazunov@gmail.com>
3087 XSLT-generated document should inherit its SecurityOrigin from the source document
3088 https://bugs.webkit.org/show_bug.cgi?id=69661
3090 Reviewed by Adam Barth.
3092 Test: http/tests/security/xss-DENIED-xsl-document-securityOrigin.xml
3094 * xml/XSLTProcessor.cpp:
3095 (WebCore::XSLTProcessor::createDocumentFromSource):
3097 2011-10-07 Sheriff Bot <webkit.review.bot@gmail.com>
3099 Unreviewed, rolling out r96944.
3100 http://trac.webkit.org/changeset/96944
3101 https://bugs.webkit.org/show_bug.cgi?id=69662
3103 Caused many tests to crash on Snow Leopard (Requested by rniwa
3106 * css/CSSStyleApplyProperty.cpp:
3107 (WebCore::ApplyPropertyColor::applyInheritValue):
3108 * page/animation/AnimationBase.cpp:
3109 (WebCore::PropertyWrapperMaybeInvalidColor::PropertyWrapperMaybeInvalidColor):
3110 (WebCore::PropertyWrapperSVGPaint::PropertyWrapperSVGPaint):
3111 (WebCore::AnimationBase::ensurePropertyMap):
3112 * platform/graphics/Color.h:
3113 (WebCore::Color::Color):
3114 * rendering/style/BorderValue.h:
3115 (WebCore::BorderValue::BorderValue):
3116 (WebCore::BorderValue::isTransparent):
3117 (WebCore::BorderValue::operator==):
3118 (WebCore::BorderValue::color):
3119 * rendering/style/OutlineValue.h:
3120 (WebCore::OutlineValue::operator==):
3121 * rendering/style/RenderStyle.h:
3122 (WebCore::InheritedFlags::setBorderLeftColor):
3123 (WebCore::InheritedFlags::setBorderRightColor):
3124 (WebCore::InheritedFlags::setBorderTopColor):
3125 (WebCore::InheritedFlags::setBorderBottomColor):
3126 (WebCore::InheritedFlags::setOutlineColor):
3127 (WebCore::InheritedFlags::setColumnRuleColor):
3128 (WebCore::InheritedFlags::fillPaintColor):
3129 (WebCore::InheritedFlags::strokePaintColor):
3130 (WebCore::InheritedFlags::borderLeftColor):
3131 (WebCore::InheritedFlags::borderRightColor):
3132 (WebCore::InheritedFlags::borderTopColor):
3133 (WebCore::InheritedFlags::borderBottomColor):
3134 (WebCore::InheritedFlags::backgroundColor):
3135 (WebCore::InheritedFlags::color):
3136 (WebCore::InheritedFlags::columnRuleColor):
3137 (WebCore::InheritedFlags::outlineColor):
3138 (WebCore::InheritedFlags::textEmphasisColor):
3139 (WebCore::InheritedFlags::textFillColor):
3140 (WebCore::InheritedFlags::textStrokeColor):
3141 (WebCore::InheritedFlags::stopColor):
3142 (WebCore::InheritedFlags::floodColor):
3143 (WebCore::InheritedFlags::lightingColor):
3145 2011-10-07 David Hyatt <hyatt@apple.com>
3147 https://bugs.webkit.org/show_bug.cgi?id=69658
3149 [CSS3 Regions] Box painting of overflow into regions is incorrect because children were being
3150 incorrectly clamped to their containing block region ranges. Change the clamping model so that
3151 renderRegionForLine no longer does it. A block will now truly have an accurate range across
3152 all the regions that paint it. Instead, do the clamping at the time a child box asks the containing
3153 block for its information. At that time clamp to the start and end regions, so that we never ask
3154 a containing block for info about a region that it doesn't exist in.
3156 Reviewed by Anders Carlsson.
3158 Added new test in fast/regions and updated an old result to be correct.
3160 * rendering/RenderBlock.cpp:
3161 (WebCore::RenderBlock::pageLogicalHeightForOffset):
3162 (WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
3163 (WebCore::RenderBlock::regionAtBlockOffset):
3164 (WebCore::RenderBlock::clampToStartAndEndRegions):
3165 * rendering/RenderBlock.h:
3166 * rendering/RenderBox.cpp:
3167 (WebCore::RenderBox::borderBoxRectInRegion):
3168 (WebCore::RenderBox::containingBlockLogicalWidthForContentInRegion):
3169 (WebCore::RenderBox::renderBoxRegionInfo):
3170 * rendering/RenderFlowThread.cpp:
3171 (WebCore::RenderFlowThread::renderRegionForLine):
3172 (WebCore::RenderFlowThread::regionLogicalWidthForLine):
3173 (WebCore::RenderFlowThread::regionLogicalHeightForLine):
3174 (WebCore::RenderFlowThread::regionRemainingLogicalHeightForLine):
3175 (WebCore::RenderFlowThread::mapFromFlowToRegion):
3176 (WebCore::RenderFlowThread::setRegionRangeForBox):
3177 * rendering/RenderFlowThread.h:
3179 2011-10-07 Chang Shu <cshu@webkit.org>
3181 Remove compile time flag ENABLE_PASSWORD_ECHO
3182 https://bugs.webkit.org/show_bug.cgi?id=69647
3184 As we have runtime flag in the page/Settings, we should remove this redundant compile time flag.
3186 Reviewed by Andreas Kling.
3189 * page/Settings.cpp:
3190 (WebCore::Settings::Settings):
3192 2011-10-07 Chris Fleizach <cfleizach@apple.com>
3194 Bug 69562 - AccessibilityImageMapLink holds onto it's parent even after it's been freed
3195 https://bugs.webkit.org/show_bug.cgi?id=69562
3197 Some fake objects, like AXImageMapLink, have weak references to their parent's (since they are fake objects and
3198 need some connection to the parent). However, if the parent disappears before the child, then we're left with a
3199 out of date reference to that parent.
3201 The fix is to allow these elements to clear their parentage when the parent goes away.
3203 Reviewed by Darin Adler.
3205 Test: accessibility/image-map-update-parent-crash.html
3207 * accessibility/AccessibilityMenuListOption.cpp:
3208 (WebCore::AccessibilityMenuListOption::isVisible):
3209 * accessibility/AccessibilityMenuListPopup.cpp:
3210 (WebCore::AccessibilityMenuListPopup::isOffScreen):
3211 (WebCore::AccessibilityMenuListPopup::isEnabled):
3212 (WebCore::AccessibilityMenuListPopup::press):
3213 (WebCore::AccessibilityMenuListPopup::addChildren):
3214 (WebCore::AccessibilityMenuListPopup::childrenChanged):
3215 * accessibility/AccessibilityMockObject.h:
3216 (WebCore::AccessibilityMockObject::detachFromParent):
3217 * accessibility/AccessibilityObject.cpp:
3218 (WebCore::AccessibilityObject::clearChildren):
3219 * accessibility/AccessibilityObject.h:
3220 (WebCore::AccessibilityObject::detachFromParent):
3221 * accessibility/AccessibilitySlider.cpp:
3222 (WebCore::AccessibilitySliderThumb::elementRect):
3223 * accessibility/AccessibilityTableColumn.cpp:
3224 (WebCore::AccessibilityTableColumn::headerObjectForSection):
3226 2011-10-07 Andreas Kling <kling@webkit.org>
3228 Pack StyleRareNonInheritedData even harder on 64-bit.
3229 https://bugs.webkit.org/show_bug.cgi?id=69648
3231 Reviewed by Benjamin Poulain.
3233 Rearrange the members of StyleRareNonInheritedData to fold as much
3234 as possible into the padding at the end of RefCounted.
3236 This shrinks StyleRareNonInheritedData by 16 bytes on 64-bit,
3237 reducing memory consumption by another 140 kB when loading the
3240 * rendering/style/StyleRareNonInheritedData.cpp:
3241 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
3242 * rendering/style/StyleRareNonInheritedData.h:
3244 2011-10-07 Cary Clark <caryclark@google.com>
3246 Enable color profiles, unless profile is grayscale
3247 https://bugs.webkit.org/show_bug.cgi?id=69622
3248 https://bugs.webkit.org/show_bug.cgi?id=49950
3249 http://code.google.com/p/chromium/issues/detail?id=80844
3251 Further specialize the earlier fix described in 49950 to
3252 allow color profiles in YCbCr images, but disallow color
3253 profiles marked as grayData.
3254 (see http://www.color.org/ICC1v42_2006-05.pdf 7.2.6 )
3256 Reviewed by Adam Barth.
3258 Test: fast/images/gray-scale-jpeg-with-color-profile.html
3259 fast/images/color-jpeg-with-color-profile.html
3261 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
3262 (WebCore::readColorProfile):
3263 (WebCore::JPEGImageReader::decode):
3265 2011-10-07 Chris Fleizach <cfleizach@apple.com>
3267 AX: re-organize fake elements to use new AccessibilityMockObject
3268 https://bugs.webkit.org/show_bug.cgi?id=69588
3270 This adds an AccessibilityMockObject for "fake" elements to descend from.
3271 Its benefit is to consolidate the various ways that these fake elements are setting
3272 and returning their parent objects.
3274 No functional change, hence no new tests.
3276 Reviewed by Jon Honeycutt.
3279 * GNUmakefile.list.am:
3282 * WebCore.vcproj/WebCore.vcproj:
3283 * WebCore.xcodeproj/project.pbxproj:
3284 * accessibility/AccessibilityARIAGrid.cpp:
3285 (WebCore::AccessibilityARIAGrid::addChildren):
3286 * accessibility/AccessibilityImageMapLink.cpp:
3287 (WebCore::AccessibilityImageMapLink::AccessibilityImageMapLink):
3288 * accessibility/AccessibilityImageMapLink.h:
3289 (WebCore::AccessibilityImageMapLink::node):
3290 * accessibility/AccessibilityMenuList.cpp:
3291 (WebCore::AccessibilityMenuList::addChildren):
3292 * accessibility/AccessibilityMenuList.h:
3293 (WebCore::toAccessibilityMenuList):
3294 * accessibility/AccessibilityMenuListOption.cpp:
3295 (WebCore::AccessibilityMenuListOption::AccessibilityMenuListOption):
3296 (WebCore::AccessibilityMenuListOption::isVisible):
3297 * accessibility/AccessibilityMenuListOption.h:
3298 * accessibility/AccessibilityMenuListPopup.cpp:
3299 (WebCore::AccessibilityMenuListPopup::AccessibilityMenuListPopup):
3300 (WebCore::AccessibilityMenuListPopup::isOffScreen):
3301 (WebCore::AccessibilityMenuListPopup::isEnabled):
3302 (WebCore::AccessibilityMenuListPopup::menuListOptionAccessibilityObject):
3303 (WebCore::AccessibilityMenuListPopup::press):
3304 (WebCore::AccessibilityMenuListPopup::addChildren):
3305 (WebCore::AccessibilityMenuListPopup::childrenChanged):
3306 (WebCore::AccessibilityMenuListPopup::didUpdateActiveOption):
3307 * accessibility/AccessibilityMenuListPopup.h:
3308 * accessibility/AccessibilityMockObject.cpp: Added.
3309 (WebCore::AccessibilityMockObject::AccessibilityMockObject):
3310 (WebCore::AccessibilityMockObject::~AccessibilityMockObject):
3311 * accessibility/AccessibilityMockObject.h: Added.
3312 (WebCore::AccessibilityMockObject::parentObject):
3313 (WebCore::AccessibilityMockObject::setParent):
3314 (WebCore::AccessibilityMockObject::detachFromParent):
3315 * accessibility/AccessibilitySlider.cpp:
3316 (WebCore::AccessibilitySlider::addChildren):
3317 (WebCore::AccessibilitySliderThumb::AccessibilitySliderThumb):
3318 (WebCore::AccessibilitySliderThumb::elementRect):
3319 * accessibility/AccessibilitySlider.h:
3320 * accessibility/AccessibilityTable.cpp:
3321 (WebCore::AccessibilityTable::addChildren):
3322 (WebCore::AccessibilityTable::headerContainer):
3323 * accessibility/AccessibilityTable.h:
3324 (WebCore::toAccessibilityTable):
3325 * accessibility/AccessibilityTableColumn.cpp:
3326 (WebCore::AccessibilityTableColumn::AccessibilityTableColumn):
3327 (WebCore::AccessibilityTableColumn::setParent):
3328 (WebCore::AccessibilityTableColumn::headerObject):
3329 (WebCore::AccessibilityTableColumn::headerObjectForSection):
3330 (WebCore::AccessibilityTableColumn::accessibilityIsIgnored):
3331 (WebCore::AccessibilityTableColumn::addChildren):
3332 * accessibility/AccessibilityTableColumn.h:
3333 * accessibility/AccessibilityTableHeaderContainer.cpp:
3334 (WebCore::AccessibilityTableHeaderContainer::AccessibilityTableHeaderContainer):
3335 (WebCore::AccessibilityTableHeaderContainer::accessibilityIsIgnored):
3336 (WebCore::AccessibilityTableHeaderContainer::addChildren):
3337 * accessibility/AccessibilityTableHeaderContainer.h:
3339 2011-10-07 Nate Chapin <japhet@chromium.org>
3341 Make IconLoader a CachedResourceClient instead of a SubresourceLoaderClient.
3342 This is one of the steps required to remove the SubresourceLoaderClient interface,
3343 which will simplify the layering in the loader.
3344 https://bugs.webkit.org/show_bug.cgi?id=69567
3346 Reviewed by Adam Barth.
3348 No new tests, no functionality change intended.
3351 * GNUmakefile.list.am:
3354 * WebCore.vcproj/WebCore.vcproj:
3355 * WebCore.xcodeproj/project.pbxproj:
3356 * loader/cache/CachedRawResource.cpp: Added.
3357 * loader/cache/CachedRawResource.h: Added.
3358 * loader/cache/CachedResource.cpp:
3359 * loader/cache/CachedResource.h:
3360 (WebCore::CachedResource::ignoreForRequestCount): Renamed and generalized from isLinkResource(),
3361 which was only used to decided whether the CachedResource should count toward
3362 CachedResourceLoader::requestCount().
3363 * loader/cache/CachedResourceLoader.cpp:
3364 * loader/cache/CachedResourceLoader.h:
3365 * loader/cache/CachedResourceRequest.cpp:
3366 * loader/cache/CachedResourceRequest.h:
3367 * loader/icon/IconLoader.cpp: Get a CachedResource instead of a SubresourceLoader.
3368 (WebCore::IconLoader::notifyFinished): Merge in the status code check that was in didReceiveResponse(),
3369 since we won't be checking any callbacks before the load completes.
3370 * loader/icon/IconLoader.h:
3372 2011-10-07 Adam Bergkvist <adam.bergkvist@ericsson.com>
3374 Add WebCore platform interfaces needed by updated PeerConnection design
3375 https://bugs.webkit.org/show_bug.cgi?id=68460
3377 Reviewed by Adam Barth.
3379 Added the PeerConnection platform files to WebCore/platform/mediastream
3381 Currently not testable.
3384 * GNUmakefile.list.am:
3385 * WebCore.gyp/WebCore.gyp:
3387 * platform/mediastream/MediaStreamComponent.h: Added.
3388 (WebCore::MediaStreamComponent::create):
3389 (WebCore::MediaStreamComponent::source):
3390 (WebCore::MediaStreamComponent::enabled):
3391 (WebCore::MediaStreamComponent::setEnabled):
3392 (WebCore::MediaStreamComponent::MediaStreamComponent):
3393 * platform/mediastream/MediaStreamDescriptor.h: Added.
3394 (WebCore::MediaStreamDescriptor::create):
3395 (WebCore::MediaStreamDescriptor::owner):
3396 (WebCore::MediaStreamDescriptor::setOwner):
3397 (WebCore::MediaStreamDescriptor::label):
3398 (WebCore::MediaStreamDescriptor::component):
3399 (WebCore::MediaStreamDescriptor::numberOfComponents):
3400 (WebCore::MediaStreamDescriptor::ended):
3401 (WebCore::MediaStreamDescriptor::setEnded):
3402 (WebCore::MediaStreamDescriptor::MediaStreamDescriptor):
3403 * platform/mediastream/MediaStreamSource.h: Added.
3404 (WebCore::MediaStreamSource::create):
3405 (WebCore::MediaStreamSource::id):
3406 (WebCore::MediaStreamSource::type):
3407 (WebCore::MediaStreamSource::name):
3408 (WebCore::MediaStreamSource::muted):
3409 (WebCore::MediaStreamSource::setMuted):
3410 (WebCore::MediaStreamSource::MediaStreamSource):
3411 * platform/mediastream/PeerHandler.cpp: Added.
3412 (WebCore::PeerHandler::PeerHandler):
3413 (WebCore::PeerHandler::~PeerHandler):
3414 (WebCore::PeerHandler::produceInitialOffer):
3415 (WebCore::PeerHandler::handleInitialOffer):
3416 (WebCore::PeerHandler::processSDP):
3417 (WebCore::PeerHandler::processPendingStreams):
3418 (WebCore::PeerHandler::sendDataStreamMessage):
3419 (WebCore::PeerHandler::stop):
3420 * platform/mediastream/PeerHandler.h: Added.
3421 (WebCore::PeerHandlerClient::~PeerHandlerClient):
3422 (WebCore::PeerHandler::create):
3424 2011-10-07 Vineet Chaudary <vineet.chaudhary@motorola.com>
3426 background-color affects the font color in disabled textarea.
3427 https://bugs.webkit.org/show_bug.cgi?id=65361
3429 Reviewed by Darin Adler.
3431 For the transparent/translucent background colors use lightening fortext color.
3433 * rendering/RenderTextControl.cpp:
3434 (WebCore::disabledTextColor):
3436 2011-10-07 David Barr <davidbarr@chromium.org>
3438 Implement currentColor support for box-shadow and text-shadow
3439 https://bugs.webkit.org/show_bug.cgi?id=68218
3441 Reviewed by Simon Fraser.
3443 Test: fast/box-shadow/box-shadow-currentcolor.html
3445 * css/CSSParser.cpp:
3446 (WebCore::CSSParser::parseShadow): Add CSSValueCurrentcolor to supported keywords.
3448 2011-10-07 Pavel Feldman <pfeldman@google.com>
3450 Web Inspector: add Audits panel to the compilation.
3451 https://bugs.webkit.org/show_bug.cgi?id=69633
3453 Reviewed by Yury Semikhatsky.
3455 * inspector/compile-front-end.sh:
3456 * inspector/front-end/AuditCategories.js:
3457 * inspector/front-end/AuditLauncherView.js:
3458 * inspector/front-end/AuditResultView.js:
3459 * inspector/front-end/AuditRules.js:
3460 (WebInspector.AuditRules.CombineExternalResourcesRule.prototype.doRun):
3461 (WebInspector.AuditRules.MinimizeDnsLookupsRule.prototype.doRun):
3462 (WebInspector.AuditRules.CacheControlRule.prototype.handleNonCacheableResources):
3463 * inspector/front-end/AuditsPanel.js:
3464 (WebInspector.AuditsPanel):
3465 * inspector/front-end/NetworkLog.js:
3466 * inspector/front-end/treeoutline.js:
3468 2011-10-07 Andreas Kling <kling@webkit.org>