1 2011-12-31 Dan Bernstein <mitz@apple.com>
3 WebCore changes for: REGRESSION (WebKit2): Cursor, hover states not updated when page scrolls under stationary mouse pointer
4 https://bugs.webkit.org/show_bug.cgi?id=75405
6 Reviewed by Anders Carlsson.
8 Test: fast/events/frame-scroll-fake-mouse-move.html
11 (WebCore::FrameView::scrollPositionChanged): Added a call to
12 EventHandler::dispatchFakeMouseMoveEventSoon().
14 2012-01-01 Andreas Kling <awesomekling@apple.com>
16 Cache named item collections on Document, not just their caches.
17 <http://webkit.org/b/75403>
19 Reviewed by Anders Carlsson.
21 Keep two maps of name -> RefPtr<HTMLNameCollection> on Document. We already
22 had maps for the CollectionCaches and were creating the HTMLNameCollections
23 every time they were accessed. We now let the collections create and manage
24 the CollectionCaches instead of Document.
26 No new tests since these collections are not exposed to the web.
30 (WebCore::Document::windowNamedItems):
31 (WebCore::Document::documentNamedItems):
33 Replace the name/CollectionCache maps by name/HTMLNameCollection maps.
35 * bindings/js/JSDOMWindowCustom.cpp:
36 (WebCore::namedItemGetter):
37 * bindings/js/JSHTMLDocumentCustom.cpp:
38 (WebCore::JSHTMLDocument::nameGetter):
40 Pass names as AtomicStrings to Document's collection getters.
42 * html/HTMLNameCollection.h:
43 (WebCore::HTMLNameCollection::create):
44 * html/HTMLNameCollection.cpp:
45 (WebCore::HTMLNameCollection::HTMLNameCollection):
47 Store the name in an AtomicString instead of a String, incidentally
48 making traversal of HTMLNameCollections more efficient.
50 * html/CollectionType.h:
52 Remove two now-unneeded constants.
54 2012-01-01 Andreas Kling <awesomekling@apple.com>
56 Remove Document::collectionInfo() and let collections manage their caches.
57 <http://webkit.org/b/75401>
59 Reviewed by Anders Carlsson.
61 Remove the CollectionCaches from Document and have the document's collections
62 create and manage the caches on-demand instead. This is a step towards merging
63 CollectionCache into HTMLCollection.
67 * html/HTMLCollection.cpp:
68 (WebCore::HTMLCollection::HTMLCollection):
69 * html/HTMLOptionsCollection.cpp:
71 2012-01-01 Andreas Kling <awesomekling@apple.com>
73 RenderThemeMac: Avoid double hash lookup in systemColor().
74 <http://webkit.org/b/75409>
76 Reviewed by Anders Carlsson.
78 * rendering/RenderThemeMac.mm:
79 (WebCore::RenderThemeMac::systemColor):
81 2012-01-01 Andreas Kling <awesomekling@apple.com>
83 CSSStyleSelector: Avoid double hash lookup in keyframeStylesForAnimation().
84 <http://webkit.org/b/75408>
86 Reviewed by Anders Carlsson.
88 * css/CSSStyleSelector.cpp:
89 (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
91 2012-01-01 Andreas Kling <awesomekling@apple.com>
93 KeyframeAnimation: Use hash lookups to determine if property is animated.
94 <http://webkit.org/b/75407>
96 Reviewed by Anders Carlsson.
98 Clean out an old FIXME about using hash lookups instead of iterating over
101 * page/animation/KeyframeAnimation.cpp:
102 (WebCore::KeyframeAnimation::hasAnimationForProperty):
103 (WebCore::KeyframeAnimation::affectsProperty):
105 2011-12-31 Dan Bernstein <mitz@apple.com>
107 WebCore change for <rdar://problem/10463059> Cannot print USPS shipping labels
108 http://webkit.org/b/72801
110 Reviewed by Anders Carlsson and Alexey Proskuryakov.
112 * WebCore.exp.in: Exported Chrome::print().
114 2011-12-31 Dan Bernstein <mitz@apple.com>
116 WebCore changes for <rdar://problem/8750356> REGRESSION (WebKit2): Printing a subframe containing a PDF prints the on-screen view instead of the entire PDF document
117 <http://webkit.org/b/75232>
119 Reviewed by Alexey Proskuryakov.
121 * WebCore.exp.in: Exported PluginDocument::pluginWidget().
122 * WebCore.xcodeproj/project.pbxproj: Promoted PluginDocument.h to private.
123 * html/PluginDocument.h: Fixed a typo in a comment.
125 2011-12-30 Andreas Kling <awesomekling@apple.com>
127 Cache and reuse the HTMLTableElement.rows collection.
128 <http://webkit.org/b/75398>
130 Reviewed by Anders Carlsson.
132 Let HTMLTableElement::rows() cache the returned collection and tie it to the
133 lifetime of the form.
135 Test: fast/dom/table-rows-collection-idempotence.html
138 * html/HTMLTableElement.h:
139 * html/HTMLTableElement.cpp:
140 (WebCore::HTMLTableElement::rows):
142 Cache the HTMLTableRowsCollection returned by rows() on the HTMLTableElement.
143 Remove the per-table CollectionCache and let the collection manage that.
145 * html/HTMLTableRowsCollection.h:
146 * html/HTMLTableRowsCollection.cpp:
147 (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
148 (WebCore::HTMLTableRowsCollection::create):
150 Tell the base class constructor to not retain the back-pointer to the table.
152 2011-12-30 Andreas Kling <awesomekling@apple.com>
154 Cache and reuse the HTMLSelectElement.options collection.
155 <http://webkit.org/b/75399>
157 Reviewed by Anders Carlsson.
159 Let HTMLSelectElement::options() cache the returned collection and tie it to the
160 lifetime of the form. This shrinks HTMLSelectElement by sizeof(CollectionCache)
163 Test: fast/dom/select-options-collection-idempotence.html
166 * html/HTMLSelectElement.h:
167 * html/HTMLSelectElement.cpp:
168 (WebCore::HTMLSelectElement::options):
170 Cache the HTMLOptionsCollection returned by options() on the HTMLSelectElement.
171 Remove the per-select CollectionCache and let the collection manage that.
173 * html/HTMLOptionsCollection.h:
174 * html/HTMLOptionsCollection.cpp:
175 (WebCore::HTMLOptionsCollection::create):
176 (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
178 Tell the base class constructor to not retain the back-pointer to the element.
180 * html/HTMLSelectElement.cpp:
181 (WebCore::HTMLSelectElement::setRecalcListItems):
182 * html/HTMLOptionsCollection.cpp:
183 (WebCore::HTMLOptionsCollection::invalidateCache):
185 Added so HTMLSelectElement can invalidate the collection without triggering
186 unnecessary instantiation of a CollectionCache.
188 2011-12-30 Kentaro Hara <haraken@chromium.org>
190 Enable the [Supplemental] IDL on CMake
191 https://bugs.webkit.org/show_bug.cgi?id=75345
193 Reviewed by Daniel Bates.
195 This patch enables the [Supplemental] IDL on CMake by changing the build
196 flow of CMake as follows.
198 - Previous build flow:
199 foreach $idl (all IDL files) {
200 generate-bindings.pl depends on $idl;
201 generate-bindings.pl reads $idl;
202 generate-bindings.pl generates .h and .cpp files for $idl;
205 - New build flow (See the discussions in bug 72138 for more details):
206 resolve-supplemental.pl depends on all IDL files;
207 resolve-supplemental.pl reads all IDL files;
208 resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
209 resolve-supplemental.pl outputs supplemental_dependency.tmp;
210 foreach $idl (all IDL files) {
211 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
212 generate-bindings.pl reads $idl;
213 generate-bindings.pl reads supplemental_dependency.tmp;
214 generate-bindings.pl generates .h and .cpp files for $idl,
215 including all attributes in the IDL files that are implementing $idl;
218 Tests: Confirm that build succeeds.
219 http/tests/websocket/tests/*
222 * UseJSC.cmake: Modified to reflect the new build flow as described above.
223 * UseV8.cmake: Ditto.
225 2011-12-30 Robert Hogan <robert@webkit.org>
227 REGRESSION (r94492): Text is shifted to the right in some buttons in the Mac App Store
228 https://bugs.webkit.org/show_bug.cgi?id=74723
230 Reviewed by Dan Bernstein.
232 Tests: fast/css/absolute-inline-alignment-2.html
233 fast/css/absolute-inline-alignment.html
235 Inline positioned elements in the leading spaces of an inline run need to align to
236 adjacent text, so add them to the run as they're encountered.
238 * rendering/RenderBlockLineLayout.cpp:
239 (WebCore::LineInfo::LineInfo): Keep a count of positioned objects encountered when
240 skipping leading whitespace.
241 (WebCore::LineInfo::runsFromLeadingWhitespace):
242 (WebCore::LineInfo::resetRunsFromLeadingWhitespace):
243 (WebCore::LineInfo::incrementRunsFromLeadingWhitespace):
244 (WebCore::RenderBlock::constructLine): Leading positioned objects should not be considered
245 when deciding the number of runs in a line. Otherwise they would contribute towards line
246 height themselves and prevent a free-standing BR following the positioned object from providing a full
248 (WebCore::RenderBlock::layoutRunsAndFloatsInRange): Since a run containing line-breaks will enter
249 skipLeadingWhitespace for each new line we reset the count every time so that the count of positioned
250 objects we encounter only affects the line they appear on. This case is covered by
251 fast/inline/styledEmptyInlinesWithBRs.html
252 (WebCore::RenderBlock::LineBreaker::skipLeadingWhitespace): Add a run for each inline positioned object
253 encountered in leading white space. Keep a count of them so that they can be excluded from
254 the total number of runs in constructLine.
256 2011-12-30 Raymond Liu <raymond.liu@intel.com>
258 Remove unnecessary [Custom] attribute in CanvasRenderingContext2D.idl
259 https://bugs.webkit.org/show_bug.cgi?id=75376
261 Reviewed by Adam Barth.
263 No new tests required.
265 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
266 * html/canvas/CanvasRenderingContext2D.idl:
268 2011-12-30 Andreas Kling <awesomekling@apple.com>
270 Cache and reuse the HTMLFormElement.elements collection.
271 <http://webkit.org/b/75375>
273 Reviewed by Anders Carlsson.
275 Let HTMLFormElement::elements() cache the returned collection and tie it to the
276 lifetime of the form. This reduces memory consumption by ~70 kB (on 64-bit) when
277 viewing your average popular post on reddit.com.
279 Test: fast/dom/form-elements-collection-idempotence.html
282 * html/HTMLFormElement.h:
283 * html/HTMLFormElement.cpp:
284 (WebCore::HTMLFormElement::elements):
286 Cache the HTMLFormCollection returned by elements() on the HTMLFormElement.
287 Remove the per-form CollectionCache and let the collection manage that.
289 * html/HTMLCollection.h:
290 * html/HTMLCollection.cpp:
291 (WebCore::HTMLCollection::HTMLCollection):
292 (WebCore::HTMLCollection::create):
294 Have the HTMLCollection constructor take a bool argument that decides whether
295 we retain the base node pointer or not. This mechanism is a temporary measure
296 until all collection types are owned by their respective base nodes.
298 * html/HTMLFormCollection.h:
299 * html/HTMLFormCollection.cpp:
300 (WebCore::HTMLFormCollection::HTMLFormCollection):
301 (WebCore::HTMLFormCollection::create):
303 Tell the base class constructor to not retain the back-pointer to the form.
305 2011-12-30 Andreas Kling <awesomekling@apple.com>
307 Unreviewed buildfix after r103841.
309 * inspector/InspectorMemoryAgent.cpp:
311 2011-12-30 Andreas Kling <awesomekling@apple.com>
313 CSSStyleDeclaration: Only allow setting parent rule at construction.
314 <http://webkit.org/b/75391>
316 Reviewed by Dan Bernstein.
318 A CSSStyleDeclaration should only ever belong to one CSSRule. Enforce this
319 at compile-time by replacing setParentRule(CSSRule*) with clearParentRule().
321 * css/CSSFontFaceRule.cpp:
322 (WebCore::CSSFontFaceRule::~CSSFontFaceRule):
323 * css/CSSStyleDeclaration.h:
324 (WebCore::CSSStyleDeclaration::clearParentRule):
325 * css/CSSStyleRule.cpp:
326 (WebCore::CSSStyleRule::~CSSStyleRule):
327 * css/WebKitCSSKeyframeRule.cpp:
328 (WebCore::WebKitCSSKeyframeRule::~WebKitCSSKeyframeRule):
330 2011-12-30 Andreas Kling <awesomekling@apple.com>
332 WebKitCSSKeyframeRule.style.parentRule should point to the keyframe rule.
333 <http://webkit.org/b/75336>
335 Reviewed by Antti Koivisto.
337 Let CSS animation keyframe rules .style.parentRule point back to the keyframe
338 board, rather than the keyframes rule containing it.
340 Test: fast/css/css-keyframe-style-parentRule.html
343 (WebCore::CSSParser::createKeyframeRule):
344 * css/WebKitCSSKeyframeRule.cpp:
345 (WebCore::WebKitCSSKeyframeRule::setDeclaration):
347 Set the CSSMutableStyleDeclaration's parent rule when creating it instead
348 of in WebKitCSSKeyframeRule::setDeclaration(). Add assertion to make sure
349 it's only called with declarations already parented to the keyframe rule.
351 * css/WebKitCSSKeyframesRule.cpp:
352 (WebCore::WebKitCSSKeyframesRule::~WebKitCSSKeyframesRule):
353 (WebCore::WebKitCSSKeyframesRule::append):
354 (WebCore::WebKitCSSKeyframesRule::deleteRule):
356 Stop reparenting keyframe rules' style declarations to the keyframes rule.
358 2011-12-30 Yury Semikhatsky <yurys@chromium.org>
360 Web Inspector: use typed front-end API in the memory agent
361 https://bugs.webkit.org/show_bug.cgi?id=75382
363 Memory agent now uses generate C++ API for communicating to the front-end.
365 Reviewed by Pavel Feldman.
367 * inspector/InspectorMemoryAgent.cpp:
368 (WebCore::DOMTreeStatistics::CounterVisitor::CounterVisitor):
369 (WebCore::DOMTreeStatistics::CounterVisitor::counters):
370 (WebCore::DOMTreeStatistics::CounterVisitor::visitNode):
372 2011-12-30 Pavel Feldman <pfeldman@google.com>
374 Web Inspector: migrate from "attached" to "compact" styles.
375 https://bugs.webkit.org/show_bug.cgi?id=75381
377 When front-end is docked to right, it should look like "detached", but is still "attached".
378 Use "compact" mode instead of "attached" mode in the styles to mitigate it.
380 Reviewed by Yury Semikhatsky.
382 * inspector/front-end/SearchController.js:
383 (WebInspector.SearchController.prototype.updateSearchLabel):
384 * inspector/front-end/Toolbar.js:
385 (WebInspector.Toolbar.prototype.set compact):
386 (WebInspector.Toolbar.prototype._toolbarDragStart):
387 (WebInspector.Toolbar.prototype._toolbarDrag):
388 * inspector/front-end/helpScreen.css:
389 (body.compact .help-window-outer):
390 (body.compact .help-window-main):
391 (body.compact .help-window-caption):
392 (body.compact .help-close-button):
393 (body.compact .help-content):
394 * inspector/front-end/inspector.css:
395 (body.compact #toolbar):
396 (body.compact.port-qt #toolbar):
397 (body.compact.inactive #toolbar):
398 (body.compact #search-toolbar-label):
399 (body.compact #toolbar-dropdown-arrow):
400 (body.compact #search):
401 (body.compact.port-qt .toolbar-item.close-left, body.compact.port-qt .toolbar-item.close-right):
402 (body.compact #main):
403 * inspector/front-end/inspector.js:
404 (WebInspector.set attached):
405 (WebInspector.get isCompactMode):
406 (WebInspector.get _setCompactMode):
407 (WebInspector._installDockToRight.listener.get if):
408 (WebInspector._installDockToRight.listener):
409 * inspector/front-end/inspectorCommon.css:
410 (body.dock-to-right):
411 (body.dock-to-right.inactive):
413 2011-12-30 Sheriff Bot <webkit.review.bot@gmail.com>
415 Unreviewed, rolling out r103794.
416 http://trac.webkit.org/changeset/103794
417 https://bugs.webkit.org/show_bug.cgi?id=75379
419 the ASSERT is triggered by several tests (Requested by
420 jchaffraix on #webkit).
422 * rendering/RenderTable.cpp:
423 (WebCore::RenderTable::RenderTable):
424 (WebCore::RenderTable::addChild):
425 (WebCore::RenderTable::layout):
426 (WebCore::RenderTable::recalcSections):
427 (WebCore::RenderTable::outerBorderAfter):
428 (WebCore::RenderTable::sectionAbove):
429 (WebCore::RenderTable::sectionBelow):
430 * rendering/RenderTable.h:
431 (WebCore::RenderTable::header):
432 (WebCore::RenderTable::footer):
433 (WebCore::RenderTable::firstBody):
434 (WebCore::RenderTable::hasSections):
435 (WebCore::RenderTable::topSection):
437 2011-12-29 Pavel Feldman <pfeldman@google.com>
439 Web Inspector: enable dock-to-right view (still need embedders to support it).
440 https://bugs.webkit.org/show_bug.cgi?id=75360
442 Reviewed by Yury Semikhatsky.
444 * English.lproj/localizedStrings.js:
445 * inspector/front-end/Settings.js:
446 (WebInspector.Settings):
447 * inspector/front-end/SettingsScreen.js:
448 (WebInspector.SettingsScreen):
449 * inspector/front-end/inspector.js:
450 (WebInspector.set attached):
451 (WebInspector._renderAsAttached.get return):
452 (WebInspector._renderAsAttached):
453 (WebInspector._installDockToRight.updateToolbar):
455 2011-12-29 Raymond Liu <raymond.liu@intel.com>
457 Use IDL overloads in AudioContext.idl for createBuffer
458 https://bugs.webkit.org/show_bug.cgi?id=75293
460 Reviewed by Adam Barth.
462 No new tests required.
464 * bindings/js/JSAudioContextCustom.cpp:
465 * bindings/v8/custom/V8AudioContextCustom.cpp:
466 * webaudio/AudioContext.cpp:
467 (WebCore::AudioContext::createBuffer):
468 * webaudio/AudioContext.h:
469 * webaudio/AudioContext.idl:
471 2011-12-29 Andreas Kling <awesomekling@apple.com>
473 HTMLDivElement: Remove unnecessary variable in parseMappedAttribute().
474 <http://webkit.org/b/75363>
476 Reviewed by Daniel Bates.
478 * html/HTMLDivElement.cpp:
479 (WebCore::HTMLDivElement::parseMappedAttribute):
481 2011-12-29 Andreas Kling <awesomekling@apple.com>
483 HTMLParagraphElement: Remove unnecessary variable in parseMappedAttribute().
484 <http://webkit.org/b/75362>
486 Reviewed by Daniel Bates.
488 * html/HTMLParagraphElement.cpp:
489 (WebCore::HTMLParagraphElement::parseMappedAttribute):
491 2011-12-29 Andreas Kling <awesomekling@apple.com>
493 Use HashMap<OwnPtr> for Document's named item collection caches.
494 <http://webkit.org/b/75335>
496 Reviewed by Daniel Bates.
499 (WebCore::Document::~Document):
501 Remove now-unneeded deleteAllValues() loop.
503 (WebCore::Document::nameCollectionInfo):
505 Use add() instead of find()/add() to avoid one extra hash lookup.
509 Switch the value type of m_nameCollectionInfo to use OwnPtr.
511 2011-12-29 David Barton <dbarton@mathscribe.com>
513 mfenced skips the first separator if the separators attribute contains multiple separators
514 https://bugs.webkit.org/show_bug.cgi?id=57697
516 Reviewed by Dan Bernstein.
520 * rendering/mathml/RenderMathMLFenced.cpp:
521 (WebCore::RenderMathMLFenced::addChild):
522 - Thanks to Xun Sun <xun.sun@intel.com> for the off-by-one error fix.
524 2011-12-29 Alexis Menard <alexis.menard@openbossa.org>
526 Enable the [Supplemental] IDL on Qt.
527 https://bugs.webkit.org/show_bug.cgi?id=75274
529 Reviewed by Andreas Kling.
531 http://trac.webkit.org/changeset/103783 broke the Qt SL bot.
532 This patch fixes the problem by using 'tr' rather than 'sed' which
533 seems to be more consistent between Mac and Linux.
535 * DerivedSources.pri:
537 2011-12-29 Vsevolod Vlasov <vsevik@chromium.org>
539 Web Inspector: Scripts navigator should support incremental search by typing.
540 https://bugs.webkit.org/show_bug.cgi?id=75349
542 Reviewed by Pavel Feldman.
544 * inspector/front-end/ScriptsNavigator.js:
545 (WebInspector.ScriptsNavigator):
546 (WebInspector.ScriptsNavigator.prototype.get defaultFocusedElement):
547 (WebInspector.ScriptsNavigator.prototype.show):
548 (WebInspector.ScriptsNavigator.prototype._reset):
549 (WebInspector.NavigatorTreeOutline):
550 (WebInspector.NavigatorTreeOutline.prototype.scriptTreeElements):
551 (WebInspector.NavigatorTreeOutline.prototype.searchStarted):
552 (WebInspector.NavigatorTreeOutline.prototype.searchFinished):
553 (WebInspector.BaseNavigatorTreeElement.prototype.onreveal):
554 (WebInspector.BaseNavigatorTreeElement.prototype.set titleText):
555 (WebInspector.BaseNavigatorTreeElement.prototype.matchesSearchText):
556 * inspector/front-end/inspector.css:
557 (.outline-disclosure ol.search-match-not-found li.selected .selection):
558 (.outline-disclosure ol.search-match-found li.selected):
559 (.outline-disclosure ol.search-match-found li.selected *):
560 (.outline-disclosure ol.search-match-found li.parent.selected::before):
561 (.outline-disclosure ol.search-match-found li.parent.expanded.selected::before):
562 * inspector/front-end/scriptsPanel.css:
563 (#scripts-navigator-tree-search-box):
564 (#scripts-navigator-tree-search-box.visible):
565 (#scripts-navigator-tree-search-box > input):
566 (.scripts.panel .navigator .search-match-found li.selected .selection):
567 (.scripts.panel .navigator .search-match-not-found li.selected .selection):
568 (.scripts.panel .navigator .searching li.selected .selection):
569 * inspector/front-end/treeoutline.js:
571 (TreeOutline.prototype._treeKeyPress):
572 (TreeOutline.prototype._startSearch.focusSearchInput):
573 (TreeOutline.prototype._startSearch):
574 (TreeOutline.prototype._searchTextChanged):
575 (TreeOutline.prototype._showSearchMatchElement):
576 (TreeOutline.prototype._searchInputKeyDown):
577 (TreeOutline.prototype._nextSearchMatch):
578 (TreeOutline.prototype._previousSearchMatch):
579 (TreeOutline.prototype._searchInputBlur):
580 (TreeOutline.prototype._searchFinished):
581 (TreeOutline.prototype.stopSearch):
583 2011-12-29 Vsevolod Vlasov <vsevik@chromium.org>
585 Web Inspector: Scripts navigator should trim long file names and show full url in tooltip.
586 https://bugs.webkit.org/show_bug.cgi?id=75343
588 Reviewed by Pavel Feldman.
590 Test: inspector/debugger/ui-source-code-display-name.html
592 * inspector/front-end/ScriptsNavigator.js:
593 (WebInspector.ScriptsNavigator.prototype.setScriptSourceIsDirty):
594 * inspector/front-end/ScriptsPanel.js:
595 (WebInspector.ScriptsPanel.EditorContainer.prototype.showSourceFrame):
596 (WebInspector.ScriptsPanel.EditorContainer.prototype.replaceSourceFrames):
597 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.showSourceFrame):
598 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.replaceSourceFrames):
599 * inspector/front-end/TabbedEditorContainer.js:
600 (WebInspector.TabbedEditorContainer):
601 (WebInspector.TabbedEditorContainer.prototype._appendSourceFrameTab):
602 (WebInspector.TabbedEditorContainer.prototype._tabClosed):
603 (WebInspector.TabbedEditorContainer.prototype._replaceSourceFrameTab.get if):
604 (WebInspector.TabbedEditorContainer.prototype._replaceSourceFrameTab):
605 (WebInspector.TabbedEditorContainer.prototype.get replaceSourceFrames):
606 (WebInspector.TabbedEditorContainer.prototype.reset):
607 * inspector/front-end/TabbedPane.js:
608 (WebInspector.TabbedPane.prototype.appendTab):
609 (WebInspector.TabbedPane.prototype.changeTabTooltip):
610 (WebInspector.TabbedPaneTab):
611 (WebInspector.TabbedPaneTab.prototype.get tooltip):
612 (WebInspector.TabbedPaneTab.prototype.set tooltip):
613 (WebInspector.TabbedPaneTab.prototype._createTabElement):
614 * inspector/front-end/UISourceCode.js:
615 (WebInspector.UISourceCode.prototype._parseURL):
616 * inspector/front-end/utilities.js:
619 2011-12-29 Alexis Menard <alexis.menard@openbossa.org>
621 getComputedStyle for margin is not implemented.
622 https://bugs.webkit.org/show_bug.cgi?id=75358
624 Reviewed by Andreas Kling.
626 Implement getComputedStyle for margin.
628 Test: fast/css/getComputedStyle/getComputedStyle-margin-shorthand.html
630 * css/CSSComputedStyleDeclaration.cpp:
631 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
633 2011-12-29 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
635 Use HashMap<OwnPtr> in RenderSVGResourcePattern
636 https://bugs.webkit.org/show_bug.cgi?id=75361
638 Reviewed by Andreas Kling.
640 * rendering/svg/RenderSVGResourcePattern.cpp:
641 (WebCore::RenderSVGResourcePattern::removeAllClientsFromCache):
642 (WebCore::RenderSVGResourcePattern::removeClientFromCache):
643 (WebCore::RenderSVGResourcePattern::applyResource): use HashMap::add() to avoid
644 looking up the hash twice.
645 * rendering/svg/RenderSVGResourcePattern.h: rename m_pattern to m_patternMap to
646 improve readability a little bit.
648 2011-12-29 Alexis Menard <alexis.menard@openbossa.org>
650 getComputedStyle for padding is not implemented.
651 https://bugs.webkit.org/show_bug.cgi?id=75352
653 Reviewed by Andreas Kling.
655 Implement getComputedStyle for padding shorthand property.
657 Test: fast/css/getComputedStyle/getComputedStyle-padding-shorthand.html
659 * css/CSSComputedStyleDeclaration.cpp:
660 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
662 2011-12-29 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
664 Use HashMap<OwnPtr> in OriginAccessMap
665 https://bugs.webkit.org/show_bug.cgi?id=75327
667 Reviewed by Andreas Kling.
669 * page/SecurityPolicy.cpp:
670 (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
671 (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
672 (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
674 2011-12-29 Pavel Podivilov <podivilov@chromium.org>
676 Web Inspector: support sourceMappingURL magic comment.
677 https://bugs.webkit.org/show_bug.cgi?id=75356
679 Reviewed by Pavel Feldman.
681 * inspector/ContentSearchUtils.cpp:
682 (WebCore::ContentSearchUtils::findSourceMapURL):
683 * inspector/ContentSearchUtils.h:
684 * inspector/InspectorDebuggerAgent.cpp:
685 (WebCore::InspectorDebuggerAgent::sourceMapURLForScript):
687 2011-12-29 Alexander Pavlov <apavlov@chromium.org>
689 Web Inspector: Suggest pop-over doesn't hide on tab switch
690 https://bugs.webkit.org/show_bug.cgi?id=73611
692 Reviewed by Pavel Feldman.
694 * inspector/front-end/ConsoleView.js:
695 (WebInspector.ConsoleView.prototype.willHide):
696 * inspector/front-end/TextPrompt.js:
697 (WebInspector.TextPrompt.prototype.complete):
698 (WebInspector.TextPrompt.prototype._completionsReady):
699 (WebInspector.TextPrompt.prototype.acceptSuggestion):
700 (WebInspector.TextPrompt.prototype.hideSuggestBox):
701 (WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
703 2011-12-28 Alexander Pavlov <apavlov@chromium.org>
705 Web Inspector: Implement CSS selector profiler
706 https://bugs.webkit.org/show_bug.cgi?id=74004
708 Reviewed by Pavel Feldman.
710 This implementation of CSS selector profiler measures the total time required to match a certain selector
711 against DOM nodes and apply the style declaration properties to the particular element,
712 as well as the number of selector matches (i.e. the number of nodes that matched the selector.)
713 The results are approximate due to internal matching algorithm optimizations (shared styles et al.)
714 Multiple selectors with the same selectorText are coalesced into a single record.
716 * English.lproj/localizedStrings.js:
718 * WebCore.vcproj/WebCore.vcproj:
719 * inspector/compile-front-end.sh:
720 * inspector/front-end/CSSSelectorProfileView.js: Added.
721 (WebInspector.CSSSelectorDataGridNode):
722 (WebInspector.CSSSelectorDataGridNode.prototype.get rawData):
723 (WebInspector.CSSSelectorProfileView):
724 (WebInspector.CSSSelectorProfileView.prototype.get statusBarItems):
725 (WebInspector.CSSSelectorProfileView.prototype.get profile):
726 (WebInspector.CSSSelectorProfileView.prototype.set profile):
727 (WebInspector.CSSSelectorProfileView.prototype._createProfileNodes):
728 (WebInspector.CSSSelectorProfileView.prototype.rebuildGridItems):
729 (WebInspector.CSSSelectorProfileView.prototype.refreshData):
730 (WebInspector.CSSSelectorProfileView.prototype.refreshShowAsPercents):
731 (WebInspector.CSSSelectorProfileView.prototype._sortProfile.get selectorComparator):
732 (WebInspector.CSSSelectorProfileView.prototype._sortProfile.timeComparator):
733 (WebInspector.CSSSelectorProfileView.prototype._sortProfile.matchesComparator):
734 (WebInspector.CSSSelectorProfileView.prototype._sortProfile):
735 (WebInspector.CSSSelectorProfileType):
736 (WebInspector.CSSSelectorProfileType.prototype.get buttonTooltip):
737 (WebInspector.CSSSelectorProfileType.prototype.buttonClicked):
738 (WebInspector.CSSSelectorProfileType.prototype.get treeItemTitle):
739 (WebInspector.CSSSelectorProfileType.prototype.get description):
740 (WebInspector.CSSSelectorProfileType.prototype.reset):
741 (WebInspector.CSSSelectorProfileType.prototype.isRecordingProfile):
742 (WebInspector.CSSSelectorProfileType.prototype.setRecordingProfile):
743 (WebInspector.CSSSelectorProfileType.prototype.startRecordingProfile):
744 (WebInspector.CSSSelectorProfileType.prototype.stopRecordingProfile):
745 (WebInspector.CSSSelectorProfileType.prototype.createSidebarTreeElementForProfile):
746 (WebInspector.CSSSelectorProfileType.prototype.createView):
747 * inspector/front-end/DetailedHeapshotView.js:
748 * inspector/front-end/ProfileView.js:
749 * inspector/front-end/ProfilesPanel.js:
750 (WebInspector.ProfileType.prototype.reset):
751 (WebInspector.ProfilesPanel.prototype._reset):
752 (WebInspector.ProfilesPanel.prototype.addProfileHeader):
753 (WebInspector.ProfilesPanel.prototype._removeTemporaryProfile):
754 (WebInspector.ProfilesPanel.prototype.setRecordingProfile):
755 (WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):
756 (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
757 (WebInspector.ProfilerDispatcher.prototype.addProfileHeader):
758 * inspector/front-end/WebKit.qrc:
759 * inspector/front-end/inspector.html:
760 * inspector/front-end/profilesPanel.css:
762 2011-12-29 Sheriff Bot <webkit.review.bot@gmail.com>
764 Unreviewed, rolling out r103798.
765 http://trac.webkit.org/changeset/103798
766 https://bugs.webkit.org/show_bug.cgi?id=75353
768 some small scrollbar differences are making the tests fail on
769 several platforms (Requested by jchaffraix on #webkit).
771 * rendering/RenderLayer.cpp:
772 (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
774 2011-12-29 Alexander Pavlov <apavlov@chromium.org>
776 Web Inspector: Focus of the DOM tree is not restored when switching to the Elements panel
777 https://bugs.webkit.org/show_bug.cgi?id=75351
779 Reviewed by Yury Semikhatsky.
781 * inspector/front-end/ElementsPanel.js:
782 (WebInspector.ElementsPanel.prototype.wasShown):
784 2011-12-29 Julien Chaffraix <jchaffraix@webkit.org>
786 REGRESSION (r93614): Safari Reader doesn't repaint correctly when scrolling
787 https://bugs.webkit.org/show_bug.cgi?id=67100
789 Reviewed by Dan Bernstein.
791 Tests: fast/layers/scroll-with-transform-composited-layer-expected.html
792 fast/layers/scroll-with-transform-composited-layer.html
793 fast/layers/scroll-with-transform-layer-expected.html
794 fast/layers/scroll-with-transform-layer.html
796 The regression came from a previous optimization that was wrongly kept after r93614.
798 * rendering/RenderLayer.cpp:
799 (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
800 Remove the early return for transformed layer. This change worked as we used
801 to call updateLayerPositions from scrollTo which would call updateLayerPosition on
802 all our descendants. After r93614, this is no longer the case and we explicitely need
803 to call updateLayerPosition on our descendants from updateLayerPositionsAfterScroll.
805 2011-12-29 Alexander Pavlov <apavlov@chromium.org>
807 Web Inspector: Tree views can be collapsed/hidden using the keyboard arrows
808 https://bugs.webkit.org/show_bug.cgi?id=46272
810 Reviewed by Yury Semikhatsky.
812 WebInspector.SidebarSectionTreeElement which is not selectable has also been made non-collapsible
813 and expanded by default.
815 * inspector/front-end/AuditsPanel.js:
816 (WebInspector.AuditsPanel):
817 * inspector/front-end/ProfilesPanel.js:
818 (WebInspector.ProfilesPanel.prototype._registerProfileType):
819 * inspector/front-end/SidebarTreeElement.js:
820 (WebInspector.SidebarSectionTreeElement):
821 (WebInspector.SidebarSectionTreeElement.prototype.selectable.false.collapse):
822 * inspector/front-end/TimelinePanel.js:
823 (WebInspector.TimelinePanel):
825 2011-12-29 Pavel Feldman <pfeldman@google.com>
827 Web Inspector: [chromium] pass dock to side request to the embedder.
828 https://bugs.webkit.org/show_bug.cgi?id=75344
830 Reviewed by Yury Semikhatsky.
832 I'd like to enable dock-to-right for the front-end window. This is a background work
833 to pass control flow from the front-end to the front-end host.
835 * inspector/InspectorFrontendClient.h:
836 * inspector/InspectorFrontendClientLocal.h:
837 (WebCore::InspectorFrontendClientLocal::requestSetDockSide):
838 * inspector/InspectorFrontendHost.cpp:
839 (WebCore::InspectorFrontendHost::requestSetDockSide):
840 * inspector/InspectorFrontendHost.h:
841 * inspector/InspectorFrontendHost.idl:
842 * inspector/front-end/InspectorFrontendHostStub.js:
843 (.WebInspector.InspectorFrontendHostStub.prototype.requestAttachWindow):
844 (.WebInspector.InspectorFrontendHostStub.prototype.requestDetachWindow):
845 (.WebInspector.InspectorFrontendHostStub.prototype.requestSetDockSide):
847 2011-12-28 Pavel Podivilov <podivilov@chromium.org>
849 Web Inspector: add "enable source maps" checkbox setting.
850 https://bugs.webkit.org/show_bug.cgi?id=75311
852 Reviewed by Pavel Feldman.
854 When "enable source maps" is on, all auto detected source maps are silently applied.
856 * English.lproj/localizedStrings.js:
857 * inspector/front-end/DebuggerPresentationModel.js:
858 * inspector/front-end/JavaScriptSourceFrame.js:
859 (WebInspector.JavaScriptSourceFrame.prototype.populateTextAreaContextMenu):
860 * inspector/front-end/RawSourceCode.js:
861 (WebInspector.RawSourceCode):
862 (WebInspector.RawSourceCode.prototype.setFormatted):
863 (WebInspector.RawSourceCode.prototype._updateSourceMapping.didCreateSourceMapping):
864 (WebInspector.RawSourceCode.prototype._updateSourceMapping):
865 (WebInspector.RawSourceCode.prototype._createUISourceCode):
866 * inspector/front-end/Settings.js:
867 (WebInspector.Settings):
868 * inspector/front-end/SettingsScreen.js:
869 (WebInspector.SettingsScreen):
870 * inspector/front-end/UISourceCode.js:
871 (WebInspector.UISourceCode):
872 * inspector/front-end/inspector.js:
873 (WebInspector._toolbarItemClicked):
875 2011-12-29 Julien Chaffraix <jchaffraix@webkit.org>
877 Tighten our checks for needsSectionRecalc in RenderTable
878 https://bugs.webkit.org/show_bug.cgi?id=73972
880 Reviewed by Adam Barth.
882 Refactoring covered under the new tests.
884 Now most of the functions use the header, first body and footer's
885 getters that checks if we need a section recalculation. The only
886 exceptions are addChild and recalcSections as they can be called
889 * rendering/RenderTable.cpp:
890 (WebCore::RenderTable::layout):
891 (WebCore::RenderTable::outerBorderAfter):
892 (WebCore::RenderTable::sectionAbove):
893 (WebCore::RenderTable::sectionBelow):
894 Updated the previous functions to use the sections' getters.
896 (WebCore::RenderTable::RenderTable):
897 (WebCore::RenderTable::addChild):
898 (WebCore::RenderTable::recalcSections):
899 Update the previous functions after the 2 renames
902 * rendering/RenderTable.h:
903 (WebCore::RenderTable::header):
904 (WebCore::RenderTable::footer):
905 (WebCore::RenderTable::firstBody):
906 Added some ASSERT here. Also renamed m_head to m_header
907 and m_foot to m_footer to match the getter and to avoid
908 unneeded abbreviation.
910 (WebCore::RenderTable::hasSections):
911 (WebCore::RenderTable::topSection):
912 Updated the previous functions to use the section getters.
914 2011-12-28 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
916 Use HashMap<OwnPtr> for UserScriptMap and UserStyleSheetMap
917 https://bugs.webkit.org/show_bug.cgi?id=75323
919 Reviewed by Darin Adler.
922 (WebCore::Document::pageGroupUserSheets):
923 * page/PageGroup.cpp:
924 (WebCore::PageGroup::addUserScriptToWorld):
925 (WebCore::PageGroup::addUserStyleSheetToWorld):
926 (WebCore::PageGroup::removeUserScriptFromWorld):
927 (WebCore::PageGroup::removeUserStyleSheetFromWorld): fix a small mistake in
928 previous code. Now the entry for world is removed (and deleted) only if its
929 stylesheet vector is empty.
930 (WebCore::PageGroup::removeUserScriptsFromWorld):
931 (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
932 (WebCore::PageGroup::removeAllUserContent):
933 * page/UserScriptTypes.h:
934 * page/UserStyleSheetTypes.h:
936 2011-12-28 Andreas Kling <awesomekling@apple.com>
938 Reduce memory used by NamedNodeMap.
939 <http://webkit.org/b/75333>
941 Reviewed by Sam Weinig.
943 Give NamedNodeMap's attribute vector an inline capacity of 4. The vast majority
944 of elements have <= 4 attributes, and if they don't have any we normally don't
945 allocate an attribute map at all.
947 This reduces memory consumption by 1.2MB (on 64-bit) when loading the full HTML5
948 spec at <http://whatwg.org/c>.
950 * dom/NamedNodeMap.h:
952 2011-12-28 Andreas Kling <awesomekling@apple.com>
954 Reduce memory used by SpaceSplitString.
955 <http://webkit.org/b/75315>
957 Reviewed by Sam Weinig.
959 Split the string upon creation instead of waiting until it's accessed.
960 This allows us to get rid of all data members except the substring vector.
961 Since we're storing AtomicStrings, this is way more memory-efficient than
962 the previous implementation in the majority of cases.
964 Also reduced the inline capcity of the vector to 2 (from 8), after testing
965 showed this to cover 90% of the cases on the Alexa top sites.
967 All in all this reduces memory consumption by 1.1MB (on 64-bit) when
968 loading the full HTML5 spec at <http://whatwg.org/c>. On that same page,
969 less than 2ms is spent (on my MBP) splitting the ~20000 strings.
971 * dom/SpaceSplitString.cpp:
972 (WebCore::SpaceSplitStringData::createVector):
973 (WebCore::SpaceSplitStringData::containsAll):
974 (WebCore::SpaceSplitStringData::remove):
975 * dom/SpaceSplitString.h:
976 (WebCore::SpaceSplitStringData::SpaceSplitStringData):
977 (WebCore::SpaceSplitStringData::contains):
978 (WebCore::SpaceSplitStringData::size):
979 (WebCore::SpaceSplitStringData::operator[]):
981 2011-12-28 ChangSeok Oh <shivamidow@gmail.com>
983 [GTK] Fix compilation issue when selecting opengl for Accelerated compositing
984 https://bugs.webkit.org/show_bug.cgi?id=75309
986 Reviewed by Martin Robinson.
988 Add TextureMapperGL and TextureMapperGLCairo files.
989 They define new classes required to implement TextureMapperGL for GTK port.
991 No new tests required.
993 * GNUmakefile.list.am:
994 * platform/graphics/cairo/TextureMapperGLCairo.cpp: Added.
995 (WebCore::BGRA32PremultimpliedBufferCairo::BGRA32PremultimpliedBufferCairo):
996 (WebCore::BGRA32PremultimpliedBufferCairo::~BGRA32PremultimpliedBufferCairo):
997 (WebCore::BGRA32PremultimpliedBufferCairo::beginPaint):
998 (WebCore::BGRA32PremultimpliedBufferCairo::data):
999 (WebCore::BGRA32PremultimpliedBufferCairo::endPaint):
1000 (WebCore::uidForImage):
1001 (WebCore::BGRA32PremultimpliedBuffer::create):
1002 * platform/graphics/cairo/TextureMapperGLCairo.h: Added.
1004 2011-12-28 Sheriff Bot <webkit.review.bot@gmail.com>
1006 Unreviewed, rolling out r103782.
1007 http://trac.webkit.org/changeset/103782
1008 https://bugs.webkit.org/show_bug.cgi?id=75328
1010 broke origin-whitelisting-removal.html (Requested by kling on
1013 * page/SecurityPolicy.cpp:
1014 (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
1015 (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
1016 (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
1018 2011-12-28 Kentaro Hara <haraken@chromium.org>
1020 Enable the [Supplemental] IDL on Qt
1021 https://bugs.webkit.org/show_bug.cgi?id=75274
1023 Reviewed by Adam Barth.
1025 This patch enables the [Supplemental] IDL on Qt by changing the build
1026 flow of Qt as follows.
1028 - Previous build flow:
1029 foreach $idl (all IDL files) {
1030 generate-bindings.pl depends on $idl;
1031 generate-bindings.pl reads $idl;
1032 generate-bindings.pl generates .h and .cpp files for $idl;
1035 - New build flow (See the discussions in bug 72138 for more details):
1036 resolve-supplemental.pl depends on all IDL files;
1037 resolve-supplemental.pl reads all IDL files;
1038 resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
1039 resolve-supplemental.pl outputs supplemental_dependency.tmp;
1040 foreach $idl (all IDL files) {
1041 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
1042 generate-bindings.pl reads $idl;
1043 generate-bindings.pl reads supplemental_dependency.tmp;
1044 generate-bindings.pl generates .h and .cpp files for $idl,
1045 including all attributes in the IDL files that are implementing $idl;
1048 Tests: Confirm that build succeeds.
1049 http/tests/websocket/tests/*
1051 * DerivedSources.pri: Described the above build flow.
1053 2011-12-28 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
1055 Use HashMap<OwnPtr> in OriginAccessMap
1056 https://bugs.webkit.org/show_bug.cgi?id=75327
1058 Reviewed by Andreas Kling.
1060 * page/SecurityPolicy.cpp:
1061 (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
1062 (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
1063 (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
1065 2011-12-28 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
1067 Use HashMap<OwnPtr> for ProgressTracker's items
1068 https://bugs.webkit.org/show_bug.cgi?id=75326
1070 Reviewed by Andreas Kling.
1072 * loader/ProgressTracker.cpp:
1073 (WebCore::ProgressTracker::~ProgressTracker): although is empty, the destructor was
1074 kept so in the header file we can forward declare ProgressItem and use in an OwnPtr.
1075 (WebCore::ProgressTracker::reset):
1076 (WebCore::ProgressTracker::incrementProgress):
1077 (WebCore::ProgressTracker::completeProgress): removed a useless assignment to item
1078 member just before it is deleted.
1079 * loader/ProgressTracker.h:
1081 2011-12-28 Alexis Menard <alexis.menard@openbossa.org>
1083 getComputedStyle for border-color is not implemented.
1084 https://bugs.webkit.org/show_bug.cgi?id=75324
1086 Reviewed by Andreas Kling.
1088 Implement getComputedStyle for border-color.
1090 Test: fast/css/getComputedStyle/getComputedStyle-border-color-shorthand.html
1092 * css/CSSComputedStyleDeclaration.cpp:
1093 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1095 2011-12-28 Darin Adler <darin@apple.com>
1097 Use OwnPtr to handle lifetime and deletion of FontFace objects
1098 https://bugs.webkit.org/show_bug.cgi?id=75221
1100 Reviewed by Daniel Bates.
1102 * css/CSSFontFaceSource.cpp:
1103 (WebCore::CSSFontFaceSource::getFontData): Use add instead of get/set to read and
1104 then later fill a cache. Use new version of registerCustomFont that takes PassOwnPtr.
1105 * css/CSSSegmentedFontFace.cpp:
1106 (WebCore::CSSSegmentedFontFace::getFontData): Ditto.
1109 (WebCore::Document::registerCustomFont): Take a PassOwnPtr instead of raw pointer.
1110 * dom/Document.h: Ditto.
1112 2011-12-28 Adam Barth <abarth@webkit.org>
1114 "Fake" insertion mode in HTMLTreeBuilder doesn't do anything
1115 https://bugs.webkit.org/show_bug.cgi?id=75322
1117 Reviewed by Darin Adler.
1119 This machinery isn't needed anymore now that we're using the new
1120 foreign content hotness.
1122 * html/parser/HTMLTreeBuilder.cpp:
1123 * html/parser/HTMLTreeBuilder.h:
1124 (WebCore::HTMLTreeBuilder::setInsertionMode):
1126 2011-12-28 Alexis Menard <alexis.menard@openbossa.org>
1128 getComputedStyle for border-style is not implemented.
1129 https://bugs.webkit.org/show_bug.cgi?id=75312
1131 Reviewed by Andreas Kling.
1133 Implement getComputedStyle for border-style.
1135 Test: fast/css/getComputedStyle/getComputedStyle-border-style-shorthand.html
1137 * css/CSSComputedStyleDeclaration.cpp:
1138 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1140 2011-12-28 Alexis Menard <alexis.menard@openbossa.org>
1142 getComputedStyle for border-bottom, border-top, border-left, border-right is not implemented.
1143 https://bugs.webkit.org/show_bug.cgi?id=74743
1145 Reviewed by Tony Chang.
1147 Implement getComputedStyle for border-top, border-bottom, border-right, border-left.
1149 Test: fast/css/getComputedStyle/getComputedStyle-border-shorthand.html
1151 * css/CSSComputedStyleDeclaration.cpp:
1152 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1153 (WebCore::CSSComputedStyleDeclaration::getCSSPropertyValuesForShorthandProperties):
1154 * css/CSSComputedStyleDeclaration.h:
1156 2011-12-28 Robert Hogan <robert@webkit.org>
1158 Inline flow not learning height of all text descendants
1159 https://bugs.webkit.org/show_bug.cgi?id=75305
1161 Reviewed by Dan Bernstein.
1163 Tests: fast/inline/nested-text-descendants-expected.html
1164 fast/inline/nested-text-descendants.html
1166 The root inline box would only learn it had text descendants if its first grandchild
1167 was text. It wasn't informed of subsequent text grandchildren so could not factor them
1168 into its calculation of the line height.
1169 To fix this, propagate the existence of a text descendant to the root inline box
1170 by walking up through the text child's ancestors.
1172 * rendering/InlineFlowBox.cpp:
1173 (WebCore::setHasTextDescendantsOnAncestors):
1174 (WebCore::InlineFlowBox::addToLine):
1175 * rendering/InlineFlowBox.h:
1176 (WebCore::InlineFlowBox::setHasTextDescendants):
1178 2011-12-28 Sheriff Bot <webkit.review.bot@gmail.com>
1180 Unreviewed, rolling out r103620.
1181 http://trac.webkit.org/changeset/103620
1182 https://bugs.webkit.org/show_bug.cgi?id=75316
1184 Causes many crashes (Requested by abarth on #webkit).
1186 * loader/FrameLoaderClient.h:
1187 * page/DOMWindow.cpp:
1188 (WebCore::DOMWindow::postMessageTimerFired):
1190 2011-12-28 Alexander Pavlov <apavlov@chromium.org>
1192 [V8][Chromium] 'randomString' in document.body.style always returns true
1193 https://bugs.webkit.org/show_bug.cgi?id=75313
1195 Reviewed by Adam Barth.
1197 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
1198 (WebCore::V8CSSStyleDeclaration::namedPropertyQuery):
1200 2011-12-28 Vsevolod Vlasov <vsevik@chromium.org>
1202 Web Inspector: Add domain.png to WebCore.gypi / WebKit.qrc.
1203 https://bugs.webkit.org/show_bug.cgi?id=75310
1205 Reviewed by Pavel Feldman.
1208 * inspector/front-end/WebKit.qrc:
1210 2011-12-28 Vsevolod Vlasov <vsevik@chromium.org>
1212 Web Inspector: ExperimentsSettings causes warning on chromium when reading localizedStrings.
1213 https://bugs.webkit.org/show_bug.cgi?id=75299
1215 Reviewed by Pavel Feldman.
1217 * inspector/front-end/Settings.js:
1218 (WebInspector.ExperimentsSettings):
1219 * inspector/front-end/SettingsScreen.js:
1220 (WebInspector.SettingsScreen.prototype._createExperimentCheckbox):
1222 2011-12-28 Vsevolod Vlasov <vsevik@chromium.org>
1224 Web Inspector: Scripts panel: add debug sidebar resizer to TabbedEditorContainer.
1225 https://bugs.webkit.org/show_bug.cgi?id=75300
1227 Reviewed by Pavel Feldman.
1229 * inspector/front-end/ScriptsPanel.js:
1230 * inspector/front-end/scriptsPanel.css:
1231 (#scripts-debug-sidebar-resizer-widget):
1233 2011-12-28 Alexander Pavlov <apavlov@chromium.org>
1235 Web Inspector: Introduce a Profiler launcher view similar to that in the Audits panel
1236 https://bugs.webkit.org/show_bug.cgi?id=75228
1238 Reviewed by Pavel Feldman.
1240 * English.lproj/localizedStrings.js:
1242 * WebCore.vcproj/WebCore.vcproj:
1243 * inspector/front-end/AuditLauncherView.js:
1244 (WebInspector.AuditLauncherView):
1245 * inspector/front-end/AuditsPanel.js:
1246 (WebInspector.AuditsPanel):
1247 * inspector/front-end/DetailedHeapshotView.js:
1248 (WebInspector.DetailedHeapshotProfileType):
1249 (WebInspector.DetailedHeapshotProfileType.prototype.get treeItemTitle):
1250 (WebInspector.DetailedHeapshotProfileType.prototype.get description):
1251 * inspector/front-end/ProfileLauncherView.js: Added.
1252 (WebInspector.ProfileLauncherView):
1253 (WebInspector.ProfileLauncherView.prototype.setUpEventListeners):
1254 (WebInspector.ProfileLauncherView.prototype.addProfileType):
1255 (WebInspector.ProfileLauncherView.prototype._controlButtonClicked):
1256 (WebInspector.ProfileLauncherView.prototype._updateControls):
1257 (WebInspector.ProfileLauncherView.prototype._profileTypeChanged):
1258 (WebInspector.ProfileLauncherView.prototype._onProfileStarted):
1259 (WebInspector.ProfileLauncherView.prototype._onProfileFinished):
1260 * inspector/front-end/ProfileView.js:
1261 (WebInspector.CPUProfileType):
1262 (WebInspector.CPUProfileType.prototype.get treeItemTitle):
1263 (WebInspector.CPUProfileType.prototype.get description):
1264 * inspector/front-end/ProfilesPanel.js:
1265 (WebInspector.ProfileType.prototype.get treeItemTitle):
1266 (WebInspector.ProfileType.prototype.get description):
1267 (WebInspector.ProfilesPanel.prototype.get statusBarItems):
1268 (WebInspector.ProfilesPanel.prototype.toggleRecordButton):
1269 (WebInspector.ProfilesPanel.prototype._onProfileTypeSelected):
1270 (WebInspector.ProfilesPanel.prototype._reset):
1271 (WebInspector.ProfilesPanel.prototype._showLauncherView):
1272 (WebInspector.ProfilesPanel.prototype._registerProfileType):
1273 (WebInspector.ProfilesPanel.prototype._addProfileHeader):
1274 (WebInspector.ProfilesPanel.prototype._updateInterface):
1275 (WebInspector.ProfileTypeTreeElement):
1276 (WebInspector.ProfileTypeTreeElement.prototype.collapse):
1277 (WebInspector.ProfilesSidebarTreeElement):
1278 (WebInspector.ProfilesSidebarTreeElement.prototype.onattach):
1279 (WebInspector.ProfilesSidebarTreeElement.prototype.onselect):
1280 (WebInspector.ProfilesSidebarTreeElement.prototype.get selectable):
1281 (WebInspector.ProfilesSidebarTreeElement.prototype.refresh):
1282 * inspector/front-end/WebKit.qrc:
1283 * inspector/front-end/WelcomeView.js: Removed.
1284 * inspector/front-end/auditsPanel.css:
1285 (.audit-launcher-view .audit-launcher-view-content):
1286 (.audit-launcher-view div.button-container):
1287 (.panel-enabler-view.audit-launcher-view label):
1288 (.panel-enabler-view.audit-launcher-view label.disabled):
1289 * inspector/front-end/inspector.html:
1290 * inspector/front-end/panelEnablerView.css:
1291 (.panel-enabler-view img):
1292 (.panel-enabler-view .flexible-space):
1293 (.panel-enabler-view button:not(.status-bar-item)):
1294 (body.inactive .panel-enabler-view button, .panel-enabler-view button:disabled):
1295 (.panel-enabler-view input[type="radio"]):
1296 (.panel-enabler-view input[type="radio"]:active:not(:disabled)):
1297 (.panel-enabler-view input[type="radio"]:checked):
1298 (.panel-enabler-view input[type="radio"]:checked:active):
1299 * inspector/front-end/profilesPanel.css:
1300 (.profile-launcher-view-tree-item > .icon):
1301 (.profile-launcher-view-content):
1302 (.profile-launcher-view-content h1):
1303 (.panel-enabler-view.profile-launcher-view form):
1304 (.panel-enabler-view.profile-launcher-view label):
1305 (.profile-launcher-view-content p):
1306 (.panel-enabler-view.profile-launcher-view button:not(.status-bar-item)):
1307 (.profile-launcher-view-content button.running:not(.status-bar-item)):
1308 (body.inactive .profile-launcher-view-content button.running:not(.status-bar-item)):
1310 2011-12-28 Sheriff Bot <webkit.review.bot@gmail.com>
1312 Unreviewed, rolling out r103763.
1313 http://trac.webkit.org/changeset/103763
1314 https://bugs.webkit.org/show_bug.cgi?id=75307
1316 "Compilation fails on Snow Leopard" (Requested by yurys on
1319 * inspector/CodeGeneratorInspector.py:
1321 (create_ad_hoc_type_declaration.Helper):
1322 (CodeGenerator.generate_type_builder):
1323 (get_in_c_type_text):
1325 2011-12-28 Peter Rybin <peter.rybin@gmail.com>
1327 Web Inspector: CodeGeneratorInspector.py: generate enum types.
1328 https://bugs.webkit.org/show_bug.cgi?id=74954
1330 Reviewed by Yury Semikhatsky.
1332 Internal map of string contants is created. C enums are created for
1335 * inspector/CodeGeneratorInspector.py:
1336 (EnumConstants.add_constant):
1338 (EnumConstants.get_enum_constant_code):
1339 (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
1340 (TypeBindings.create_type_declaration_.EnumBinding.get_in_c_type_text):
1341 (TypeBindings.create_type_declaration_.EnumBinding.get_setter_value_expression_pattern):
1342 (TypeBindings.create_type_declaration_.PlainString.reduce_to_raw_type):
1343 (TypeBindings.create_type_declaration_.PlainString.get_setter_value_expression_pattern):
1344 (get_in_c_type_text):
1345 (get_setter_value_expression_pattern):
1346 (PlainObjectBinding.get_in_c_type_text):
1347 (PlainObjectBinding.get_setter_value_expression_pattern):
1348 (RawTypesBinding.get_in_c_type_text):
1349 (RawTypesBinding.get_setter_value_expression_pattern):
1350 (get_annotated_type_text):
1351 (MethodGenerateModes.get_modes):
1352 (MethodGenerateModes.StrictParameterMode.get_c_param_type_text):
1353 (MethodGenerateModes.StrictParameterMode):
1354 (MethodGenerateModes.StrictParameterMode.get_setter_value_expression):
1355 (MethodGenerateModes.RawParameterMode.get_c_param_type_text):
1356 (MethodGenerateModes.RawParameterMode):
1357 (MethodGenerateModes.RawParameterMode.get_setter_value_expression):
1358 (MethodGenerateModes.CombinedMode.get_c_param_type_text):
1359 (MethodGenerateModes):
1360 (MethodGenerateModes.CombinedMode):
1361 (MethodGenerateModes.CombinedMode.get_setter_value_expression):
1363 2011-12-28 Hans Wennborg <hans@chromium.org>
1365 IndexedDB: IDBKeyRange constructor should throw when lower > upper
1366 https://bugs.webkit.org/show_bug.cgi?id=74705
1368 Reviewed by Tony Chang.
1370 Make IDBKeyRange throw an exception when lower > upper,
1371 or lower == upper and one or both of the bounds is open.
1373 Tested in storage/indexeddb/keyrange.html.
1375 * storage/IDBKeyRange.cpp:
1376 (WebCore::IDBKeyRange::bound):
1378 2011-12-28 Alexander Pavlov <apavlov@chromium.org>
1380 Web Inspector: [protocol] empty enum constant should be replaced with identifier
1381 https://bugs.webkit.org/show_bug.cgi?id=75273
1383 Reviewed by Yury Semikhatsky.
1385 * inspector/Inspector.json:
1386 * inspector/InspectorCSSAgent.cpp:
1387 (WebCore::InspectorCSSAgent::asInspectorStyleSheet):
1388 (WebCore::InspectorCSSAgent::detectOrigin):
1389 * inspector/InspectorStyleSheet.cpp:
1390 (WebCore::InspectorStyleSheet::buildObjectForRule):
1391 * inspector/front-end/CSSStyleModel.js:
1392 (WebInspector.CSSRule.prototype.get isRegular):
1394 2011-12-27 Pavel Feldman <pfeldman@google.com>
1396 Web Inspector: complete annotating SDK component.
1397 https://bugs.webkit.org/show_bug.cgi?id=75259
1399 Reviewed by Yury Semikhatsky.
1401 * inspector/front-end/DebuggerPresentationModel.js:
1402 (WebInspector.DebuggerPresentationModel.prototype._addScript):
1403 * inspector/front-end/NetworkManager.js:
1404 (WebInspector.NetworkManager.prototype._cacheDisabledSettingChanged):
1405 (WebInspector.NetworkDispatcher.prototype._isNull):
1406 (WebInspector.NetworkDispatcher.prototype.webSocketCreated):
1407 * inspector/front-end/Resource.js:
1408 (WebInspector.Resource.displayName):
1409 * inspector/front-end/ResourceTreeModel.js:
1410 (WebInspector.ResourceTreeModel.prototype._onResourceUpdated):
1411 (WebInspector.ResourceTreeModel.prototype._consoleMessageAdded):
1412 (WebInspector.ResourceTreeFrame.prototype.get name):
1413 * inspector/front-end/TabbedEditorContainer.js:
1415 2011-12-27 Anantanarayanan G Iyengar <ananta@chromium.org>
1417 Crash in the WebKit accessibility code while attempting to retrieve the title UI element.
1418 https://bugs.webkit.org/show_bug.cgi?id=75279
1420 Reviewed by Ryosuke Niwa.
1422 Fix a crash in the the WebKit accessibility code which occurs while retrieving
1423 the title UI clement. The fix is to NULL check the RenderObject::node return value.
1425 No test added as there is no reduction.
1427 * accessibility/AccessibilityRenderObject.cpp:
1428 (WebCore::AccessibilityRenderObject::titleUIElement):
1430 2011-12-27 Dominic Cooney <dominicc@chromium.org>
1432 Remove initWebKitAnimationEvent method
1433 https://bugs.webkit.org/show_bug.cgi?id=71698
1435 Reviewed by Ojan Vafai.
1437 Now that WebKitAnimationEvent has a constructor, we don't need
1439 method. <https://www.w3.org/Bugs/Public/show_bug.cgi?id=15338> is
1440 tracking the change to the CSS Animations spec.
1442 * dom/WebKitAnimationEvent.cpp:
1443 * dom/WebKitAnimationEvent.h:
1444 * dom/WebKitAnimationEvent.idl:
1446 2011-12-27 Dominic Cooney <dominicc@chromium.org>
1448 Remove initWebKitTransitionEvent method
1449 https://bugs.webkit.org/show_bug.cgi?id=71701
1451 Reviewed by Ojan Vafai.
1453 Now that WebKitTransitionEvent has a constructor, we don't need
1455 method. <https://www.w3.org/Bugs/Public/show_bug.cgi?id=15339> is
1456 tracking the change to the CSS Transitions spec.
1458 * dom/WebKitTransitionEvent.cpp:
1459 * dom/WebKitTransitionEvent.h:
1460 * dom/WebKitTransitionEvent.idl:
1462 2011-12-27 Tony Chang <tony@chromium.org>
1464 Move HarfBuzz files into their own directory
1465 https://bugs.webkit.org/show_bug.cgi?id=72780
1467 Reviewed by Daniel Bates.
1469 FontCacheLinux.cpp got moved to platform/graphics/skia/FontCacheSkia.cpp since it wasn't HarfBuzz specific.
1471 I used HarfBuzz in filenames since that seems to be how the name is capitalized on the project home page.
1473 Fixed some style errors caught by the style checker.
1475 * PlatformBlackBerry.cmake:
1476 * WebCore.gyp/WebCore.gyp:
1478 * platform/graphics/chromium/FontPlatformData.h:
1479 * platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/ComplexTextControllerLinux.cpp.
1480 * platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.h: Renamed from Source/WebCore/platform/graphics/chromium/ComplexTextControllerLinux.h.
1481 * platform/graphics/harfbuzz/FontHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontLinux.cpp.
1482 * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontPlatformDataLinux.cpp.
1483 * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h: Renamed from Source/WebCore/platform/graphics/chromium/FontPlatformDataLinux.h.
1484 * platform/graphics/harfbuzz/HarfBuzzSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/HarfbuzzSkia.cpp.
1485 * platform/graphics/harfbuzz/HarfBuzzSkia.h: Renamed from Source/WebCore/platform/graphics/chromium/HarfbuzzSkia.h.
1486 * platform/graphics/harfbuzz/SimpleFontDataSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/SimpleFontDataLinux.cpp.
1487 * platform/graphics/skia/FontCacheSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontCacheLinux.cpp.
1488 * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp:
1490 2011-12-27 Huang Dongsung <luxtella@company100.net>
1492 [TexMap][QT] The fragment shader in OpenGL ES2 requires the default precision
1494 https://bugs.webkit.org/show_bug.cgi?id=75168
1496 Reviewed by Noam Rosenthal.
1498 No new functionality so no new tests.
1500 * platform/graphics/opengl/TextureMapperGL.cpp:
1501 (WebCore::TextureMapperGL::initializeShaders):
1503 2011-12-27 Ryosuke Niwa <rniwa@webkit.org>
1505 [Chromium] uninitialized variable in fakeMouseMoveEventTimerFired
1506 https://bugs.webkit.org/show_bug.cgi?id=75263
1508 Reviewed by Tony Chang.
1510 The failure was caused by PlatformKeyboardEvent::getCurrentModifierState in PlatformKeyboardEventChromium.cpp
1511 not initializing arguments on Linux. Fixed the failure by always assigning false to the arguments.
1513 But we should really fix this function for Linux. Not recognizing any modifier isn't great.
1515 * platform/chromium/PlatformKeyboardEventChromium.cpp:
1516 (WebCore::PlatformKeyboardEvent::getCurrentModifierState):
1518 2011-12-27 Kentaro Hara <haraken@chromium.org>
1520 WIP: Enable the [Supplemental] IDL on Gtk
1521 https://bugs.webkit.org/show_bug.cgi?id=74972
1523 Reviewed by Adam Barth.
1525 This patch enables the [Supplemental] IDL on Gtk by changing the build
1526 flow of Gtk as follows.
1528 - Previous build flow:
1529 foreach $idl (all IDL files) {
1530 generate-bindings.pl depends on $idl;
1531 generate-bindings.pl reads $idl;
1532 generate-bindings.pl generates .h and .cpp files for $idl;
1535 - New build flow (See the discussions in bug 72138 for more details):
1536 resolve-supplemental.pl depends on all IDL files;
1537 resolve-supplemental.pl reads all IDL files;
1538 resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
1539 resolve-supplemental.pl outputs supplemental_dependency.tmp;
1540 foreach $idl (all IDL files) {
1541 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
1542 generate-bindings.pl reads $idl;
1543 generate-bindings.pl reads supplemental_dependency.tmp;
1544 generate-bindings.pl generates .h and .cpp files for $idl,
1545 including all attributes in the IDL files that are implementing $idl;
1548 Tests: Confirm that build succeeds.
1549 http/tests/websocket/tests/*
1551 * GNUmakefile.am: Described the above build flow.
1552 * GNUmakefile.list.am: Added a list of IDL files. Instead, removed a list of JS*.h and JS*.cpp
1553 that are generated by the IDL files.
1555 2011-12-27 Tony Chang <tony@chromium.org>
1557 [chromium] When building with clang, enable -Wglobal-constructors
1558 https://bugs.webkit.org/show_bug.cgi?id=74365
1560 Reviewed by Adam Barth.
1562 * WebCore.gyp/WebCore.gyp:
1564 2011-12-27 Tony Chang <tony@chromium.org>
1566 [chromium] really enable wpo for WebCore libs and for WTF
1567 https://bugs.webkit.org/show_bug.cgi?id=75264
1569 Reviewed by Adam Barth.
1571 * WebCore.gyp/WebCore.gyp: The variable was getting clobbered by the
1572 value set in common.gypi. Use a target_defaults instead to set the
1573 variable. I tested manually on my Windows machine and
1574 WholeProgramOptimization is getting set when buildtype is Official.
1576 2011-12-27 Tony Chang <tony@chromium.org>
1578 [chromium] remove references to files no longer in the tree
1579 https://bugs.webkit.org/show_bug.cgi?id=75262
1581 Reviewed by Adam Barth.
1583 * WebCore.gypi: platform/mac/PlatformMouseEventMac.mm and platform/mac/WheelEventMac.mm
1584 were removed in r103652.
1586 2011-12-27 Vsevolod Vlasov <vsevik@chromium.org>
1588 Unreviewed web inspector localizedStrings.js fix.
1590 * English.lproj/localizedStrings.js:
1592 2011-12-27 Vsevolod Vlasov <vsevik@chromium.org>
1594 Web Inspector: Introduce support for experimental settings.
1595 https://bugs.webkit.org/show_bug.cgi?id=75250
1597 Reviewed by Pavel Feldman.
1599 * English.lproj/localizedStrings.js:
1600 * inspector/front-end/ScriptsPanel.js:
1601 * inspector/front-end/Settings.js:
1602 (WebInspector.ExperimentsSettings):
1603 (WebInspector.ExperimentsSettings.prototype.get experiments):
1604 (WebInspector.ExperimentsSettings.prototype.get experimentsEnabled):
1605 (WebInspector.ExperimentsSettings.prototype._createExperiment):
1606 (WebInspector.ExperimentsSettings.prototype.set _cleanUpSetting.get var):
1607 (WebInspector.ExperimentsSettings.prototype.set _cleanUpSetting):
1608 (set WebInspector.Experiment):
1609 (WebInspector.Experiment.prototype.get name):
1610 (WebInspector.Experiment.prototype.get title):
1611 (WebInspector.Experiment.prototype.isEnabled):
1612 (WebInspector.Experiment.prototype.setEnabled):
1614 * inspector/front-end/SettingsScreen.js:
1615 (WebInspector.SettingsScreen):
1616 (WebInspector.SettingsScreen.prototype._createExperimentsWarningSubsection):
1617 (WebInspector.SettingsScreen.prototype._createExperimentCheckbox.listener):
1618 (WebInspector.SettingsScreen.prototype._createExperimentCheckbox):
1619 * inspector/front-end/helpScreen.css:
1620 (.settings-experiments-warning-subsection-warning):
1621 (.settings-experiments-warning-subsection-message):
1623 2011-12-27 Alexander Pavlov <apavlov@chromium.org>
1625 Web Inspector: exception when scrolling in JavaScriptOutline dialog with empty query
1626 https://bugs.webkit.org/show_bug.cgi?id=75255
1628 Reviewed by Pavel Feldman.
1630 * inspector/front-end/JavaScriptOutlineDialog.js:
1631 (WebInspector.JavaScriptOutlineDialog.prototype._onScroll):
1633 2011-12-27 Pavel Feldman <pfeldman@google.com>
1635 Web Inspector: add more annotations on SDK classes.
1636 https://bugs.webkit.org/show_bug.cgi?id=75247
1638 Reviewed by Yury Semikhatsky.
1640 * inspector/Inspector.json:
1641 * inspector/compile-front-end.sh:
1642 * inspector/front-end/ApplicationCacheModel.js:
1643 (WebInspector.ApplicationCacheDispatcher.prototype.networkStateUpdated):
1644 * inspector/front-end/BreakpointManager.js:
1645 (WebInspector.BreakpointManager.prototype._breakpoint):
1646 * inspector/front-end/Color.js:
1647 (WebInspector.Color.prototype.get shorthex):
1648 (WebInspector.Color.prototype.get hex):
1649 (WebInspector.Color.prototype.get rgb):
1650 (WebInspector.Color.prototype.get hsl):
1651 (WebInspector.Color.prototype.get nickname):
1652 (WebInspector.Color.prototype.hasShortHex):
1653 (WebInspector.Color.prototype._individualRGBValueToFloatValue):
1654 (WebInspector.Color.prototype._rgbStringsToHex):
1655 (WebInspector.Color.prototype._parse.this.nickname.set 2):
1656 (WebInspector.Color.prototype._parse.this.hsla.set 1):
1657 (WebInspector.Color.prototype._parse.this.rgba.set 0):
1658 (WebInspector.Color.prototype._parse.set WebInspector):
1659 (WebInspector.Color.prototype._parse):
1660 * inspector/front-end/CompilerSourceMapping.js:
1661 * inspector/front-end/ConsoleModel.js:
1662 * inspector/front-end/ContentProviders.js:
1663 (WebInspector.ScriptContentProvider):
1664 (WebInspector.ConcatenatedScriptsContentProvider):
1665 (WebInspector.CompilerSourceMappingContentProvider):
1666 (WebInspector.StaticContentProvider):
1667 * inspector/front-end/CookieParser.js:
1668 (WebInspector.CookieParser.KeyValue):
1669 (WebInspector.CookieParser.prototype.parseCookie):
1670 (WebInspector.CookieParser.prototype.parseSetCookie):
1671 (WebInspector.CookieParser.prototype._extractKeyValue):
1672 * inspector/front-end/DOMStorage.js:
1673 * inspector/front-end/Database.js:
1674 (WebInspector.DatabaseDispatcher.prototype.sqlTransactionSucceeded):
1675 (WebInspector.DatabaseDispatcher.prototype.sqlTransactionFailed):
1676 * inspector/front-end/DebuggerModel.js:
1677 (WebInspector.DebuggerModel.Location):
1678 (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
1679 * inspector/front-end/DebuggerPresentationModel.js:
1680 (WebInspector.DebuggerPresentationModelResourceBinding.prototype._setContentWithInitialContent):
1681 * inspector/front-end/ElementsTreeOutline.js:
1682 * inspector/front-end/HAREntry.js:
1683 * inspector/front-end/NetworkLog.js:
1684 (WebInspector.NetworkLog.prototype._mainFrameNavigated):
1685 * inspector/front-end/Placard.js:
1686 * inspector/front-end/RawSourceCode.js:
1687 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
1688 (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.uiLocationToRawLocation):
1689 * inspector/front-end/RemoteObject.js:
1690 (WebInspector.RemoteObject.fromPrimitiveValue):
1691 (WebInspector.RemoteObject.prototype.setPropertyValue.propertySetCallback):
1692 (WebInspector.RemoteObject.prototype.setPropertyValue):
1693 (WebInspector.LocalJSONObject.prototype.get hasChildren):
1694 (WebInspector.LocalJSONObject.prototype._children):
1695 * inspector/front-end/Resource.js:
1696 (WebInspector.Resource.restoreRevisions):
1697 (WebInspector.Resource.prototype.get queryParameters):
1698 (WebInspector.Resource.prototype.get formParameters):
1699 (WebInspector.Resource.prototype.isHttpFamily):
1700 * inspector/front-end/ResourceCategory.js:
1701 * inspector/front-end/ResourceUtils.js:
1702 * inspector/front-end/ScopeChainSidebarPane.js:
1703 (WebInspector.ScopeChainSidebarPane.prototype.update):
1704 * inspector/front-end/Script.js:
1705 (WebInspector.Script.prototype.isInlineScript):
1706 * inspector/front-end/ScriptFormatter.js:
1707 (WebInspector.ScriptFormatter.positionToLocation):
1708 * inspector/front-end/WelcomeView.js:
1709 (WebInspector.WelcomeView.prototype.addMessage):
1710 * inspector/front-end/externs.js:
1711 (Array.prototype.upperBound):
1713 2011-12-27 Vsevolod Vlasov <vsevik@chromium.org>
1715 Web Inspector: Scripts panel tabbed editor does not reopen closed tabs.
1716 https://bugs.webkit.org/show_bug.cgi?id=75245
1718 Reviewed by Pavel Feldman.
1720 * inspector/front-end/NetworkItemView.js:
1721 (WebInspector.NetworkItemView):
1722 * inspector/front-end/TabbedEditorContainer.js:
1723 (WebInspector.TabbedEditorContainer):
1724 (WebInspector.TabbedEditorContainer.prototype._tabClosed):
1725 * inspector/front-end/TabbedPane.js:
1726 (WebInspector.TabbedPane.prototype.closeTab):
1727 (WebInspector.TabbedPane.prototype.selectTab):
1729 2011-12-27 Yury Semikhatsky <yurys@chromium.org>
1731 Web Inspector: report per document JS event listener count
1732 https://bugs.webkit.org/show_bug.cgi?id=74298
1734 This patch adds JS event listener count to the memory agent
1737 Reviewed by Pavel Feldman.
1739 Test: inspector/dom-statistics.html
1741 * inspector/Inspector.json:
1742 * inspector/InspectorMemoryAgent.cpp:
1744 2011-12-27 Alexander Pavlov <apavlov@chromium.org>
1746 Web Inspector: [REGRESSION] Go to Function dialog always has a minimal height
1747 https://bugs.webkit.org/show_bug.cgi?id=75254
1749 Reviewed by Yury Semikhatsky.
1751 * inspector/front-end/scriptsPanel.css:
1754 2011-12-26 Vsevolod Vlasov <vsevik@chromium.org>
1756 Web Inspector: Create tabbed editor for scripts panel.
1757 https://bugs.webkit.org/show_bug.cgi?id=75230
1759 Reviewed by Pavel Feldman.
1762 * WebCore.vcproj/WebCore.vcproj:
1763 * inspector/compile-front-end.sh:
1764 * inspector/front-end/ScriptsNavigator.js:
1765 (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes.get if):
1766 (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes):
1767 (WebInspector.NavigatorScriptTreeElement.prototype.ondblclick):
1768 (WebInspector.NavigatorScriptTreeElement.prototype.onenter):
1769 * inspector/front-end/ScriptsPanel.js:
1770 * inspector/front-end/TabbedEditorContainer.js: Added.
1771 * inspector/front-end/TabbedPane.js:
1772 (WebInspector.TabbedPane.prototype.get visibleView):
1773 (WebInspector.TabbedPane.prototype.get selectedTabId):
1774 (WebInspector.TabbedPane.prototype.closeAllTabs):
1775 (WebInspector.TabbedPane.prototype.changeTabTitle):
1776 (WebInspector.TabbedPane.prototype.changeTabView):
1777 (WebInspector.TabbedPaneTab):
1778 (WebInspector.TabbedPaneTab.prototype.get title):
1779 (WebInspector.TabbedPaneTab.prototype.set title):
1780 (WebInspector.TabbedPaneTab.prototype.get view):
1781 (WebInspector.TabbedPaneTab.prototype.set view):
1782 (WebInspector.TabbedPaneTab.prototype._createTabElement):
1783 * inspector/front-end/WebKit.qrc:
1784 * inspector/front-end/inspector.html:
1785 * inspector/front-end/scriptsPanel.css:
1786 (.scripts-views-container):
1788 (#scripts-editor-container-tabbed-pane .tabbed-pane-header):
1789 (#scripts-editor-container-tabbed-pane .tabbed-pane-header-contents):
1790 (#scripts-editor-container-tabbed-pane .tabbed-pane-content):
1792 2011-12-27 Pavel Feldman <pfeldman@google.com>
1794 Not reviewed: Rolling out r103703 for breaking Canvas2DLayerChromiumTest.testFullLifecycle.
1796 * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1797 (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
1798 (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
1799 (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
1800 (WebCore::Canvas2DLayerChromium::setTextureManager):
1801 (WebCore::Canvas2DLayerChromium::updateCompositorResources):
1802 (WebCore::Canvas2DLayerChromium::pushPropertiesTo):
1803 (WebCore::Canvas2DLayerChromium::unreserveContentsTexture):
1804 (WebCore::Canvas2DLayerChromium::cleanupResources):
1805 * platform/graphics/chromium/Canvas2DLayerChromium.h:
1807 2011-12-22 Vangelis Kokkevis <vangelis@chromium.org>
1809 [chromium] Bypass the shadow texture copy for accelerated
1810 canvas when running the compositor in single threaded mode.
1811 https://bugs.webkit.org/show_bug.cgi?id=75146
1813 The texture copy fails on Windows as glCopyTexImage2D() doesn't
1814 support BGRA source textures.
1815 This change also modified Canvas2DLayerChromium::updateCompositorResources
1816 to call glCopyTexSubImage2D() instead of glCopyTexImage2D() so that
1817 the copy can work with texture allocated via the glTexStorage2D
1820 Reviewed by James Robinson.
1823 * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1824 (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
1825 (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
1826 (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
1827 (WebCore::Canvas2DLayerChromium::setTextureManager):
1828 (WebCore::Canvas2DLayerChromium::updateCompositorResources):
1829 (WebCore::Canvas2DLayerChromium::pushPropertiesTo):
1830 (WebCore::Canvas2DLayerChromium::unreserveContentsTexture):
1831 (WebCore::Canvas2DLayerChromium::cleanupResources):
1832 * platform/graphics/chromium/Canvas2DLayerChromium.h:
1834 2011-12-26 Gyuyoung Kim <gyuyoung.kim@samsung.com>
1836 [EFL][WK2] Implement context menu for EFL port.
1837 https://bugs.webkit.org/show_bug.cgi?id=74995
1839 Reviewed by Anders Carlsson.
1841 Implement missing ContextMenuEfl class in order to support WK2's context menu.
1842 Because WK2's context menu still needs WebCore's context menu implementation.
1843 And of course, this patch also can be used for WK1 without CROSS_PLATFORM_CONTEXT_MENU
1846 * platform/ContextMenu.h:
1847 * platform/ContextMenuItem.h:
1848 * platform/PlatformMenuDescription.h:
1849 * platform/efl/ContextMenuEfl.cpp:
1850 (WebCore::ContextMenu::~ContextMenu):
1851 (WebCore::ContextMenu::appendItem):
1852 (WebCore::ContextMenu::insertItem):
1853 (WebCore::ContextMenu::itemCount):
1854 (WebCore::ContextMenu::setPlatformDescription):
1855 (WebCore::ContextMenu::platformDescription):
1856 (WebCore::ContextMenu::releasePlatformDescription):
1857 (WebCore::platformMenuDescription):
1858 (WebCore::contextMenuItemVector):
1859 * platform/efl/ContextMenuItemEfl.cpp:
1860 (WebCore::ContextMenuItem::ContextMenuItem):
1861 (WebCore::ContextMenuItem::~ContextMenuItem):
1862 (WebCore::ContextMenuItem::setType):
1863 (WebCore::ContextMenuItem::type):
1864 (WebCore::ContextMenuItem::setAction):
1865 (WebCore::ContextMenuItem::action):
1866 (WebCore::ContextMenuItem::setTitle):
1867 (WebCore::ContextMenuItem::title):
1868 (WebCore::ContextMenuItem::setChecked):
1869 (WebCore::ContextMenuItem::checked):
1870 (WebCore::ContextMenuItem::setEnabled):
1871 (WebCore::ContextMenuItem::enabled):
1873 2011-12-26 Hajime Morrita <morrita@chromium.org>
1875 [Refactoring] Node::setTreeScopeRecursively() doesn't need includeRoot parameter
1876 https://bugs.webkit.org/show_bug.cgi?id=75240
1878 Reviewed by Anders Carlsson.
1880 No new tests. No behavior change.
1883 (WebCore::Node::setTreeScopeRecursively):
1886 2011-12-26 Darin Adler <darin@apple.com>
1888 Use OwnPtr and OwnArrayPtr in a couple more places
1889 https://bugs.webkit.org/show_bug.cgi?id=75211
1891 Reviewed by Andreas Kling.
1893 I had a patch with some changes from a while back from going through all sorts of
1894 classes and changing code to use adoptPtr. Most were landed long ago, these are the
1895 ones that still apply.
1897 There are six pieces here that could each be landed separately.
1898 The big one is CSSParser.
1900 * css/CSSGrammar.y: Update for members and functions that now
1901 return PassOwnPtr instead of raw pointers.
1902 * css/CSSParser.cpp:
1903 (WebCore::CSSParser::CSSParser): Remove explicit construction
1904 for m_valueList and m_data since OwnPtr and OwnArrayPtr initialize
1906 (WebCore::CSSParser::~CSSParser): Removed delete m_valueList and
1907 fastFree(m_data) since OwnPtr and OwnArrayPtr handle that.
1908 (WebCore::CSSParser::setupParser): Use adoptArrayPtr and new for
1909 the character array instead of fastFree/fastMalloc. Added get
1910 function calls as needed.
1911 (WebCore::CSSParser::parseValue): Added get function calls as needed.
1912 (WebCore::CSSParser::parseContent): Ditto.
1913 (WebCore::CSSParser::parseFillProperty): Ditto.
1914 (WebCore::CSSParser::parseTransformOriginShorthand): Ditto.
1915 (WebCore::CSSParser::parseBorderImage): Ditto.
1916 (WebCore::CSSParser::parseTransformOrigin): Ditto.
1917 (WebCore::CSSParser::parsePerspectiveOrigin): Ditto.
1918 (WebCore::CSSParser::sinkFloatingValueList): Changed to return PassOwnPtr.
1919 The adoptPtr call is here.
1920 (WebCore::CSSParser::sinkFloatingFunction): Ditto.
1921 (WebCore::CSSParser::markSelectorListStart): Added get function calls as needed.
1922 (WebCore::CSSParser::markSelectorListEnd): Ditto.
1923 (WebCore::CSSParser::markRuleBodyStart): Ditto.
1924 (WebCore::CSSParser::markRuleBodyEnd): Ditto.
1925 (WebCore::CSSParser::markPropertyStart): Ditto.
1926 (WebCore::CSSParser::markPropertyEnd): Ditto.
1927 * css/CSSParser.h: Moved conditional includes to their own paragraph.
1928 Made sinkFloatingValueList and sinkFloatingFunction return PassOwnPtr.
1929 Made m_valueList an OwnPtr and m_data an OwnArrayPtr.
1930 * css/SVGCSSParser.cpp:
1931 (WebCore::CSSParser::parseSVGValue): Added a call to the get function.
1933 * html/PluginDocument.h: Made isPluginDocument private. Also marked all the
1934 functions that are overriding here as OVERRIDE since I was touching the header.
1936 * html/parser/HTMLToken.h:
1937 (WebCore::HTMLTokenTypes::DoctypeData::DoctypeData): Removed an unneeded line
1938 explicitly initializing the base class.
1940 * page/animation/AnimationBase.cpp:
1941 (WebCore::RefCountedPropertyWrapper::RefCountedPropertyWrapper): Fixed indent.
1943 * rendering/style/RenderStyle.h: Moved conditional includes to their own paragraph.
1945 * xml/parser/MarkupTokenBase.h:
1946 (WebCore::MarkupTokenBase::beginDOCTYPE): Removed unneeded parentheses.
1948 2011-12-26 Vsevolod Vlasov <vsevik@chromium.org>
1950 Web Inspector: Extract FileEditor from ScriptsPanel.
1951 https://bugs.webkit.org/show_bug.cgi?id=75229
1953 Reviewed by Pavel Feldman.
1955 * inspector/front-end/JavaScriptSourceFrame.js:
1956 (WebInspector.JavaScriptSourceFrame.prototype.suggestedFileName):
1957 * inspector/front-end/ScriptsNavigator.js:
1958 * inspector/front-end/ScriptsPanel.js:
1959 (WebInspector.ScriptsPanel.prototype._reset):
1960 (WebInspector.ScriptsPanel.prototype.get visibleView):
1961 (WebInspector.ScriptsPanel.prototype._updateScriptViewStatusBarItems):
1962 (WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced.get if):
1963 (WebInspector.ScriptsPanel.EditorContainer):
1964 (WebInspector.ScriptsPanel.EditorContainer.prototype.get currentSourceFrame):
1965 (WebInspector.ScriptsPanel.EditorContainer.prototype.show):
1966 (WebInspector.ScriptsPanel.EditorContainer.prototype.showSourceFrame):
1967 (WebInspector.ScriptsPanel.EditorContainer.prototype.isSourceFrameOpen):
1968 (WebInspector.ScriptsPanel.EditorContainer.prototype.replaceSourceFrames):
1969 (WebInspector.ScriptsPanel.EditorContainer.prototype.setSourceFrameIsDirty):
1970 (WebInspector.ScriptsPanel.EditorContainer.prototype.reset):
1971 (WebInspector.ScriptsPanel.SingleFileEditorContainer):
1972 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.get currentSourceFrame):
1973 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.show):
1974 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.showSourceFrame):
1975 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.isSourceFrameOpen):
1976 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.replaceSourceFrames):
1977 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.setSourceFrameIsDirty):
1978 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.reset):
1979 * inspector/front-end/UISourceCode.js:
1980 (WebInspector.UISourceCode.prototype.get domain):
1981 (WebInspector.UISourceCode.prototype.get folderName):
1982 (WebInspector.UISourceCode.prototype.get fileName):
1983 (WebInspector.UISourceCode.prototype.get displayName):
1984 (WebInspector.UISourceCode.prototype._parseURL):
1986 2011-12-26 Darin Adler <darin@apple.com>
1988 Fix mutation observer build after didMoveToNewDocument change
1989 https://bugs.webkit.org/show_bug.cgi?id=75224
1991 Reviewed by Hajime Morita.
1994 (WebCore::willCallDidMoveToNewDocument): Added.
1995 (WebCore::didMoveToNewDocumentWasCalled): Added.
1996 (WebCore::Node::setDocument): Call new debugging function.
1997 (WebCore::Node::didMoveToNewDocument): Ditto. Also use ASSERT_UNUSED
1998 unconditionally rather than UNUSED_PARAM inside and #if. Also added
1999 a new assertion that checks that hte old document was passed through
2002 2011-12-26 Alexander Pavlov <apavlov@chromium.org>
2004 Web Inspector: [Scripts] Implement iterative match highlighting in the "Go to Function" dialog item list
2005 https://bugs.webkit.org/show_bug.cgi?id=75226
2007 Reviewed by Pavel Feldman.
2009 * inspector/front-end/JavaScriptOutlineDialog.js:
2010 (WebInspector.JavaScriptOutlineDialog):
2011 (WebInspector.JavaScriptOutlineDialog.prototype._createSearchRegExp):
2012 (WebInspector.JavaScriptOutlineDialog.prototype._filterFunctions):
2013 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.previousItem):
2014 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.nextItem):
2015 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown):
2016 (WebInspector.JavaScriptOutlineDialog.prototype._updateSelection):
2017 (WebInspector.JavaScriptOutlineDialog.prototype._onScroll):
2018 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter):
2019 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype.highlightViewportItems):
2020 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype.clearHighlight):
2021 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype._highlightItem):
2022 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype._viewportRowRange):
2023 * inspector/front-end/javaScriptOutlineDialog.css:
2024 (.js-outline-dialog > .container > div.item > span.highlight):
2026 2011-12-26 Vsevolod Vlasov <vsevik@chromium.org>
2028 Web Inspector: Extract FileSelector from ScriptsPanel.
2029 https://bugs.webkit.org/show_bug.cgi?id=75173
2031 Reviewed by Pavel Feldman.
2033 * inspector/front-end/ScriptsNavigator.js:
2034 (WebInspector.ScriptsNavigator):
2035 (WebInspector.ScriptsNavigator.prototype.get defaultFocusedElement):
2036 (WebInspector.ScriptsNavigator.prototype.show):
2037 (WebInspector.ScriptsNavigator.prototype.setScriptSourceIsDirty):
2038 (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes):
2039 (WebInspector.ScriptsNavigator.prototype.scriptSelected):
2040 * inspector/front-end/ScriptsPanel.js:
2041 (WebInspector.ScriptsPanel.prototype.get defaultFocusedElement):
2042 (WebInspector.ScriptsPanel.prototype._uiSourceCodeAdded.get if):
2043 (WebInspector.ScriptsPanel.prototype.setScriptSourceIsBeingEdited):
2044 (WebInspector.ScriptsPanel.prototype._reset):
2045 (WebInspector.ScriptsPanel.prototype._showSourceLine):
2046 (WebInspector.ScriptsPanel.prototype._showAndRevealInFileSelector):
2047 (WebInspector.ScriptsPanel.prototype._createSourceFrame):
2048 (WebInspector.ScriptsPanel.prototype._updateExecutionLine):
2049 (WebInspector.ScriptsPanel.prototype._scriptSelected):
2050 (WebInspector.ScriptsPanel.FileSelector):
2051 (WebInspector.ScriptsPanel.FileSelector.prototype.get defaultFocusedElement):
2052 (WebInspector.ScriptsPanel.FileSelector.prototype.show):
2053 (WebInspector.ScriptsPanel.FileSelector.prototype.addUISourceCode):
2054 (WebInspector.ScriptsPanel.FileSelector.prototype.isScriptSourceAdded):
2055 (WebInspector.ScriptsPanel.FileSelector.prototype.revealUISourceCode):
2056 (WebInspector.ScriptsPanel.FileSelector.prototype.setScriptSourceIsDirty):
2057 (WebInspector.ScriptsPanel.FileSelector.prototype.replaceUISourceCodes):
2058 (WebInspector.ScriptsPanel.ComboBoxFileSelector):
2059 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.get defaultFocusedElement):
2060 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.show):
2061 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.showDebugSidebarResizeWidget):
2062 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.addUISourceCode):
2063 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.isScriptSourceAdded):
2064 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.revealUISourceCode):
2065 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._innerRevealUISourceCode):
2066 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addToHistory):
2067 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.replaceUISourceCodes):
2068 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._showScriptFoldersSettingChanged):
2069 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._reset):
2070 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.setScriptSourceIsDirty):
2071 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._createEditorToolbar):
2072 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.get var):
2073 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.insertOrdered.optionCompare):
2074 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.insertOrdered):
2075 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect):
2076 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._resetFilesSelect):
2077 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._updateBackAndForwardButtons):
2078 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goBack):
2079 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goForward):
2080 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._filesSelectChanged):
2081 * inspector/front-end/inspector.html:
2082 * inspector/front-end/utilities.js:
2085 2011-12-26 Alexander Pavlov <apavlov@chromium.org>
2087 Web Inspector: Implement "Go to Function" dialog for JavaScript
2088 https://bugs.webkit.org/show_bug.cgi?id=75092
2090 Reviewed by Pavel Feldman.
2092 * English.lproj/localizedStrings.js:
2094 * WebCore.vcproj/WebCore.vcproj:
2095 * inspector/compile-front-end.sh:
2096 * inspector/front-end/JavaScriptOutlineDialog.js: Added.
2097 (WebInspector.JavaScriptOutlineDialog.onMouseDown):
2098 (WebInspector.JavaScriptOutlineDialog):
2099 (WebInspector.JavaScriptOutlineDialog.didAddChunk):
2100 (WebInspector.JavaScriptOutlineDialog.install):
2101 (WebInspector.JavaScriptOutlineDialog._show):
2102 (WebInspector.JavaScriptOutlineDialog.createShortcut):
2103 (WebInspector.JavaScriptOutlineDialog.prototype._resizeWindow):
2104 (WebInspector.JavaScriptOutlineDialog.prototype._appendItemElements):
2105 (WebInspector.JavaScriptOutlineDialog.prototype._createSearchRegExp):
2106 (WebInspector.JavaScriptOutlineDialog.prototype._filterFunctions):
2107 (WebInspector.JavaScriptOutlineDialog.prototype._selectFirstItem):
2108 (WebInspector.JavaScriptOutlineDialog.prototype._hide):
2109 (WebInspector.JavaScriptOutlineDialog.prototype._onBlur):
2110 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.previousItem):
2111 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.nextItem):
2112 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown):
2113 (WebInspector.JavaScriptOutlineDialog.prototype._scheduleFilter):
2114 (WebInspector.JavaScriptOutlineDialog.prototype._updateSelection):
2115 (WebInspector.JavaScriptOutlineDialog.prototype._onClick):
2116 (WebInspector.JavaScriptOutlineDialog.prototype._onMouseMove):
2117 (WebInspector.JavaScriptOutlineDialog.prototype._highlightFunctionLine):
2118 * inspector/front-end/JavaScriptSourceFrame.js:
2119 (WebInspector.JavaScriptSourceFrame.prototype.get uiSourceCode):
2120 * inspector/front-end/ScriptsPanel.js:
2121 (WebInspector.ScriptsPanel.prototype._didBuildOutlineChunk):
2122 (WebInspector.ScriptsPanel.prototype._reset):
2123 (WebInspector.ScriptsPanel.prototype.requestVisibleScriptOutline):
2124 (WebInspector.ScriptsPanel.prototype._createEditorToolbar):
2125 * inspector/front-end/WebKit.qrc:
2126 * inspector/front-end/inspector.html:
2127 * inspector/front-end/javaScriptOutlineDialog.css: Added.
2128 (.js-outline-dialog):
2129 (.js-outline-dialog > input):
2130 (.js-outline-dialog > div.progress):
2131 (.js-outline-dialog > div.container):
2132 (.js-outline-dialog > .container > div.item):
2133 (.js-outline-dialog > .container > div.item.selected):
2135 2011-12-26 Pavel Feldman <pfeldman@google.com>
2137 Web Inspector: make SDK compilation component self-contained.
2138 https://bugs.webkit.org/show_bug.cgi?id=75172
2140 Reviewed by Yury Semikhatsky.
2142 * inspector/compile-front-end.sh:
2143 * inspector/front-end/ConsoleMessage.js:
2144 (WebInspector.ConsoleMessageImpl):
2145 (WebInspector.ConsoleMessageImpl.prototype.get stackTrace):
2146 (WebInspector.ConsoleMessageImpl.prototype.clone):
2147 * inspector/front-end/ConsoleModel.js:
2148 (WebInspector.ConsoleModel.prototype._messageRepeatCountUpdated):
2149 (WebInspector.ConsoleMessage):
2150 (WebInspector.ConsoleMessage.prototype.isErrorOrWarning):
2151 (WebInspector.ConsoleMessage.prototype.updateRepeatCount):
2152 (WebInspector.ConsoleMessage.prototype.clone):
2153 * inspector/front-end/DebuggerPresentationModel.js:
2154 (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
2155 * inspector/front-end/ResourceUtils.js:
2156 * inspector/front-end/UIUtils.js:
2157 (WebInspector.resetToolbarColors):
2158 (WebInspector.populateHrefContextMenu):
2160 2011-12-26 Hajime Morrita <morrita@google.com>
2162 Unreviewed bad merge fix.
2164 * svg/SVGSVGElement.cpp:
2165 (WebCore::SVGSVGElement::didMoveToNewDocument):
2167 2011-12-25 Hajime Morrita <morrita@chromium.org>
2169 https://bugs.webkit.org/show_bug.cgi?id=74067
2170 Refactoring: Unitfy willMoveToNewDocument() and didMoveToNewDocument()
2172 Reviewed by Darin Adler.
2174 No new tests. No behavior change.
2176 This change combines two method Node::willMoveToNewOwnerDocument() and Node::didMoveToNewOwnerDocument()
2177 into Node::didMoveToNewDocument(Document* oldDocument).
2179 The intention of this change is:
2180 - Making upcoming refactoring (Bug 59816) possible. The refactoring will turn Node::m_document into
2181 Node::m_treeScope, and we will no longer have Node::setDocument() where we can invoke both
2182 willMoveToNewDocument() and didMoveToNewDocument() at once.
2183 - Killing one extra virtual method call.
2184 - Making the concept of "move" clearer by keeping such an operation into the single method.
2187 (WebCore::setWillMoveToNewDocumentWasCalled):
2188 (WebCore::setDidMoveToNewDocumentWasCalled):
2189 (WebCore::Node::setDocument):
2190 (WebCore::Node::didMoveToNewDocument):
2192 * dom/StyledElement.cpp:
2193 (WebCore::StyledElement::attributeChanged):
2194 * html/FormAssociatedElement.cpp:
2195 (WebCore::FormAssociatedElement::didMoveToNewDocument):
2196 * html/FormAssociatedElement.h:
2197 * html/HTMLFormControlElement.cpp:
2198 (WebCore::HTMLFormControlElement::didMoveToNewDocument):
2199 (WebCore::HTMLFormControlElementWithState::didMoveToNewDocument):
2200 * html/HTMLFormControlElement.h:
2201 * html/HTMLFormElement.cpp:
2202 (WebCore::HTMLFormElement::didMoveToNewDocument):
2203 * html/HTMLFormElement.h:
2204 * html/HTMLImageElement.cpp:
2205 (WebCore::HTMLImageElement::didMoveToNewDocument):
2206 * html/HTMLImageElement.h:
2207 * html/HTMLInputElement.cpp:
2208 (WebCore::HTMLInputElement::didMoveToNewDocument):
2209 * html/HTMLInputElement.h:
2210 * html/HTMLMediaElement.cpp:
2211 (WebCore::HTMLMediaElement::didMoveToNewDocument):
2212 * html/HTMLMediaElement.h:
2213 * html/HTMLObjectElement.cpp:
2214 (WebCore::HTMLObjectElement::didMoveToNewDocument):
2215 * html/HTMLObjectElement.h:
2216 * html/HTMLPlugInImageElement.cpp:
2217 (WebCore::HTMLPlugInImageElement::didMoveToNewDocument):
2218 * html/HTMLPlugInImageElement.h:
2219 * html/HTMLVideoElement.cpp:
2220 (WebCore::HTMLVideoElement::didMoveToNewDocument):
2221 * html/HTMLVideoElement.h:
2222 * html/ImageDocument.cpp:
2223 (WebCore::ImageDocumentElement::didMoveToNewDocument):
2224 * html/ImageInputType.cpp:
2225 (WebCore::ImageInputType::willMoveToNewDocument):
2226 * loader/ImageLoader.cpp:
2227 (WebCore::ImageLoader::elementDidMoveToNewDocument):
2228 * loader/ImageLoader.h:
2229 * svg/SVGImageElement.cpp:
2230 (WebCore::SVGImageElement::didMoveToNewDocument):
2231 * svg/SVGImageElement.h:
2232 * svg/SVGSVGElement.cpp:
2233 (WebCore::SVGSVGElement::didMoveToNewDocument):
2234 * svg/SVGSVGElement.h:
2236 2011-12-25 Kentaro Hara <haraken@chromium.org>
2238 REGRESSION(r102987): Fix the filename prefix of the generated empty .h
2239 and .cpp files for [Supplemental] IDLs
2240 https://bugs.webkit.org/show_bug.cgi?id=75082
2242 Reviewed by Darin Adler.
2244 In bug 74481, we changed generate-bindings.pl so that it generates empty .h
2245 and .cpp files for the [Supplemental] IDLs. However, the filename prefixes of
2246 those .h and .cpp files are wrong. This patch fixes the prefixes as follows:
2248 generator=JS => JS*.h, JS*.cpp
2249 generator=V8 => V8*.h, V8*.cpp
2250 generator=ObjC => DOM*.h, DOM*.cpp
2251 generator=GObject => WebKitDOM*.h, WebKitDOM*.cpp
2252 generator=CPP => WebDOM*.h, WebDOM*.cpp
2254 No new tests. No change in behavior.
2255 I confirmed that the names of generated .h and .cpp files are correct.
2257 * bindings/scripts/CodeGenerator.pm:
2258 (FileNamePrefix): Returns the prefix of file names.
2259 * bindings/scripts/CodeGeneratorCPP.pm:
2260 (GenerateInterface): Uses CodeGenerator::FileNamePrefix.
2261 * bindings/scripts/CodeGeneratorGObject.pm:
2262 (GenerateInterface): Ditto.
2263 * bindings/scripts/CodeGeneratorJS.pm:
2264 (GenerateInterface): Ditto.
2265 * bindings/scripts/CodeGeneratorObjC.pm:
2266 (GenerateInterface): Ditto.
2267 * bindings/scripts/CodeGeneratorV8.pm:
2268 (GenerateInterface): Ditto.
2269 * bindings/scripts/generate-bindings.pl:
2270 (generateEmptyHeaderAndCpp): Ditto.
2272 2011-12-25 Dan Bernstein <mitz@apple.com>
2274 WebCore changes for: Find indicators overlap when a match spans multiple text boxes
2275 https://bugs.webkit.org/show_bug.cgi?id=75220
2277 Reviewed by Darin Adler.
2279 * WebCore.exp.in: Exported new unionRect(const Vector<FloatRect>&) and existing
2280 FloatRect::intersects().
2281 * platform/graphics/FloatRect.cpp:
2282 (WebCore::unionRect): Added.
2283 * platform/graphics/FloatRect.h:
2285 2011-12-25 Darin Adler <darin@apple.com>
2287 Use OwnPtr for CSSFontFace::m_sources
2288 https://bugs.webkit.org/show_bug.cgi?id=75219
2290 Reviewed by Dan Bernstein.
2292 * css/CSSFontFace.cpp:
2293 (WebCore::CSSFontFace::isLoaded): Use the same size_t idiom here as in the rest
2295 (WebCore::CSSFontFace::isValid): Ditto. Also removed unneeded empty special casing.
2296 (WebCore::CSSFontFace::addSource): Changed to take a PassOwnPtr. Reordered so the
2297 PassOwnPtr zeroing does not cause trouble.
2298 (WebCore::CSSFontFace::getFontData): Added call to get.
2299 (WebCore::CSSFontFace::hasSVGFontFaceSource): Use the same size_t idiom here as in
2300 the rest of the functions.
2302 * css/CSSFontFace.h: Use PassOwnPtr for addSource argument, and Vector<OwnPtr> for
2303 the m_sources vector.
2305 * css/CSSFontSelector.cpp:
2306 (WebCore::CSSFontSelector::addFontFaceRule): Use OwnPtr and PassOwnPtr for font face
2307 sources that are passed to addSource.
2309 * css/CSSSegmentedFontFace.cpp: Added a now-needed include.
2311 2011-12-24 Jarred Nicholls <jarred@sencha.com>
2313 Allow XMLHttpRequest responseType to be set at any state up to and including HEADERS_RECEIVED
2314 https://bugs.webkit.org/show_bug.cgi?id=75190
2316 XMLHttpRequest.responseType should be modifiable at any state up to and including the
2317 HEADERS_RECEIVED state. Therefore, subsequent calls to open() should not reset responseType
2318 to its default value, and calls to open() must follow the same spec mandate set forth in
2319 setResponseType() for synchronous HTTP(S) requests made from the window context.
2321 Reviewed by Alexey Proskuryakov.
2323 Tests: fast/xmlhttprequest/xmlhttprequest-responsetype-before-open-sync-request.html
2324 fast/xmlhttprequest/xmlhttprequest-responsetype-before-open.html
2325 fast/xmlhttprequest/xmlhttprequest-responsetype-set-at-headers-received.html
2327 * xml/XMLHttpRequest.cpp:
2328 (WebCore::XMLHttpRequest::setResponseType):
2329 Prevent setting the value only when in LOADING and DONE states. No longer check if
2330 m_loader is present, which is instantiated on a call to send(), because responseType
2331 can be safely changed after a request is sent.
2332 (WebCore::XMLHttpRequest::open):
2333 Do not reset m_responseTypeCode to the default value, and prevent calls to open()
2334 for synchronous HTTP(S) requests made from the window context when m_responseTypeCode
2335 is not the default value.
2337 2011-12-25 Sam Weinig <sam@webkit.org>
2339 Fix tests failing as a result of r103643
2340 https://bugs.webkit.org/show_bug.cgi?id=75209
2342 Reviewed by Dan Bernstein.
2344 Switch accidental switch of default scroll granularity from
2345 ScrollByPageWheelEvent back to ScrollByPixelWheelEvent.
2347 * platform/mac/PlatformEventFactory.mm:
2348 (WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder):
2350 2011-12-25 Darin Adler <darin@apple.com>
2352 Change CSS canvas code that does HashMap get/set to use the more efficient add idiom
2353 https://bugs.webkit.org/show_bug.cgi?id=75204
2355 Reviewed by Dan Bernstein.
2358 (WebCore::Document::getCSSCanvasContext): Change local variable name of element to
2359 element; it's not the function result, so not good to name it result.
2360 (WebCore::Document::getCSSCanvasElement): Use add instead of get/set so we only do
2361 one hash table lookup.
2363 2011-12-24 Andreas Kling <awesomekling@apple.com>
2365 CSSElementStyleDeclarations should never move between elements.
2366 <http://webkit.org/b/75198>
2368 Reviewed by Anders Carlsson.
2370 Have the CSSElementStyleDeclaration subclasses take a StyledElement* in
2371 the constructor and replace setElement(StyledElement*) by clearElement().
2373 No behavior change, just enforcing the current behavior at compile-time.
2375 * css/CSSElementStyleDeclaration.h:
2376 (WebCore::CSSElementStyleDeclaration::clearElement):
2377 (WebCore::CSSElementStyleDeclaration::CSSElementStyleDeclaration):
2378 * css/CSSInlineStyleDeclaration.h:
2379 (WebCore::CSSInlineStyleDeclaration::create):
2380 (WebCore::CSSInlineStyleDeclaration::CSSInlineStyleDeclaration):
2381 * dom/StyledElement.cpp:
2382 (WebCore::StyledElement::createInlineStyleDecl):
2383 (WebCore::StyledElement::destroyInlineStyleDecl):
2384 * svg/SVGFontFaceElement.cpp:
2385 (WebCore::FontFaceStyleDeclaration::FontFaceStyleDeclaration):
2387 2011-12-23 Andreas Kling <awesomekling@apple.com>
2389 Decouple CSSMappedAttributeDeclaration from element completely.
2390 <http://webkit.org/b/75187>
2392 Reviewed by Darin Adler.
2394 Let CSSMappedAttributeDeclaration inherit from CSSMutableDeclaration instead
2395 of CSSElementStyleDeclaration. Add methods to CSSMappedAttributeDeclaration
2396 for setting properties that also take a StyledElement* and use that mechanism
2397 instead of temporarily associating an element with the declaration.
2399 This reduces the size of mapped attributes by 4/8 bytes, but more importantly
2400 opens a number of ways to simplify style declarations in future patches.
2402 * css/CSSMutableStyleDeclaration.h:
2403 * dom/CSSMappedAttributeDeclaration.cpp:
2404 (WebCore::CSSMappedAttributeDeclaration::setNeedsStyleRecalc):
2405 (WebCore::CSSMappedAttributeDeclaration::setMappedImageProperty):
2406 (WebCore::CSSMappedAttributeDeclaration::setMappedLengthProperty):
2407 (WebCore::CSSMappedAttributeDeclaration::setMappedProperty):
2408 (WebCore::CSSMappedAttributeDeclaration::removeMappedProperty):
2409 * dom/CSSMappedAttributeDeclaration.h:
2410 (WebCore::CSSMappedAttributeDeclaration::CSSMappedAttributeDeclaration):
2412 Add/move methods to CSSMappedAttributeDeclaration for setting/removing
2413 properties that also take a StyledElement*. That element is used for
2414 scheduling style recalc and passing the right document to CSSParser.
2417 * css/CSSParser.cpp:
2418 (WebCore::parseColorValue):
2419 (WebCore::parseSimpleLengthValue):
2420 (WebCore::CSSParser::parseValue):
2421 (WebCore::CSSParser::parseMappedAttributeValue):
2423 Added a parsedMappedAttributeValue() alternative to parseValue() that
2424 takes a StyledElement*.
2426 * dom/StyledElement.h:
2427 * html/HTMLElement.cpp:
2428 (WebCore::HTMLElement::setContentEditable):
2430 Add (and use) a StyledElement::removeCSSProperty() complement to the
2431 addCSS*() functions.
2433 * dom/StyledElement.cpp:
2434 (WebCore::StyledElement::attributeChanged):
2435 (WebCore::StyledElement::removeCSSProperty):
2436 (WebCore::StyledElement::addCSSProperty):
2437 (WebCore::StyledElement::addCSSImageProperty):
2438 (WebCore::StyledElement::addCSSLength):
2439 (WebCore::StyledElement::addCSSColor):
2440 (WebCore::StyledElement::createMappedDecl):
2441 * html/HTMLTableElement.cpp:
2442 (WebCore::HTMLTableElement::additionalAttributeStyleDecls):
2443 (WebCore::HTMLTableElement::addSharedCellBordersDecl):
2444 (WebCore::HTMLTableElement::addSharedCellPaddingDecl):
2445 (WebCore::HTMLTableElement::addSharedGroupDecls):
2447 Use the setMapped*Property() functions to plumb the element through.
2449 * css/CSSElementStyleDeclaration.h:
2451 Update comment about CSSElementStyleDeclaration's subclasses.
2453 2011-12-24 Jarred Nicholls <jarred@sencha.com>
2455 Allow XMLHttpRequest withCredentials to be set prior to a call to open()
2456 https://bugs.webkit.org/show_bug.cgi?id=75194
2458 XMLHttpRequest.withCredentials attribute should be modifiable prior to the OPENED state per
2459 the W3C spec. See http://dvcs.w3.org/hg/xhr/raw-file/tip/Overview.html#the-withcredentials-attribute
2461 Reviewed by Alexey Proskuryakov.
2463 Test: fast/xmlhttprequest/xmlhttprequest-withcredentials-before-open.html
2465 * xml/XMLHttpRequest.cpp:
2466 (WebCore::XMLHttpRequest::setWithCredentials):
2467 Prevent setting the value only after the OPENED state.
2469 2011-12-24 Andreas Kling <awesomekling@apple.com>
2471 Remove empty inline RenderStyle destructor.
2472 <http://webkit.org/b/75188>
2474 Rubber-stamped by Anders "Ordvits" Carlsson.
2476 * rendering/style/RenderStyle.h:
2478 2011-12-24 Andreas Kling <awesomekling@apple.com>
2480 RenderStyle: Inline the destructor.
2481 <http://webkit.org/b/75188>
2483 Reviewed by Kenneth Rohde Christiansen.
2485 The (empty) RenderStyle destructor gets a little hot sometimes, reaching up
2486 to 0.4% when loading the full HTML5 spec. Inline it to remove the pointless
2489 * rendering/style/RenderStyle.cpp:
2490 * rendering/style/RenderStyle.h:
2491 (WebCore::RenderStyleBitfields::~RenderStyle):
2493 2011-12-23 Noel Gordon <noel.gordon@gmail.com>
2495 JPEG decoders should only save color profile markers if color management is enabled
2496 https://bugs.webkit.org/show_bug.cgi?id=75182
2498 Reviewed by Adam Barth.
2500 No new tests. Covered by existing tests.
2501 fast/images/ycbcr-with-cmyk-color-profile.html
2502 fast/images/gray-scale-jpeg-with-color-profile.html
2503 fast/images/cmyk-jpeg-with-color-profile.html
2504 fast/images/color-jpeg-with-color-profile.html
2506 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2507 (WebCore::JPEGImageReader::JPEGImageReader): Store color profile (JPEG_APP0 + 2) markers
2508 using the iccjpeg helper setup_read_icc_profile() if color management is enabled.
2510 2011-12-23 Alice Boxhall <aboxhall@chromium.org>
2512 Fix crash when adding paragraph in contenteditable with role=textbox.
2513 https://bugs.webkit.org/show_bug.cgi?id=75159
2515 Reviewed by Ryosuke Niwa.
2517 Test: accessibility/textbox-role-on-contenteditable-crash.html
2519 * accessibility/AccessibilityRenderObject.cpp:
2520 (WebCore::AccessibilityRenderObject::childrenChanged): Use rendererIsEditable() rather than isContentEditable()
2521 as this method is called during render layouts, and isContentEditable() triggers a layout update, which crashes.
2523 2011-12-23 Noel Gordon <noel.gordon@gmail.com>
2525 [chromium] JPEG image with CMYK ICC color profile renders color-inverted and squashed
2526 https://bugs.webkit.org/show_bug.cgi?id=74400
2528 Reviewed by Adam Barth.
2530 Use color profiles for GRAYSCALE, RGB, YCbCr, CMYK and YCCK jpeg images only if their
2531 embedded color profile is from an RGB color space input device.
2534 fast/images/ycbcr-with-cmyk-color-profile.html
2535 - YCbCr image, with CMYK output device color profile.
2537 fast/images/gray-scale-jpeg-with-color-profile.html
2538 - YCbCr image, with GRAY input device color profile.
2539 fast/images/cmyk-jpeg-with-color-profile.html
2540 - YCCK image, with CMYK output device color profile.
2541 fast/images/color-jpeg-with-color-profile.html
2542 - YCbCr image, with RGB input device color profile.
2544 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2545 (WebCore::rgbColorProfile): Return true if the profile has an RGB color space.
2546 (WebCore::inputDeviceColorProfile): Return true if the profile is from an input device.
2547 (WebCore::readColorProfile): Ignore the embedded color profile unless if it is from
2548 an RGB color space input device.
2549 (WebCore::JPEGImageReader::decode):
2551 2011-12-23 Dan Bernstein <mitz@apple.com>
2553 Print dlerror() when dyld functions fail unexpectedly
2554 https://bugs.webkit.org/show_bug.cgi?id=75185
2556 Reviewed by Sam Weinig.
2558 * platform/mac/SoftLinking.h:
2560 2011-12-23 Sam Weinig <sam@webkit.org>
2562 Start extracting platform specific bits out of PlatformEvents
2563 https://bugs.webkit.org/show_bug.cgi?id=75063
2565 Reviewed by Anders Carlsson.
2570 * WebCore.xcodeproj/project.pbxproj:
2571 Add factory, remove implementation files for mac PlatformWheelEvent
2572 and PlatformMouseEvent.
2574 * page/mac/EventHandlerMac.mm:
2575 (WebCore::EventHandler::wheelEvent):
2576 (WebCore::EventHandler::keyEvent):
2577 (WebCore::EventHandler::currentPlatformMouseEvent):
2578 Switch to use the factory.
2580 * platform/PlatformEvent.h:
2581 (WebCore::PlatformEvent::shiftKey):
2582 (WebCore::PlatformEvent::ctrlKey):
2583 (WebCore::PlatformEvent::altKey):
2584 (WebCore::PlatformEvent::metaKey):
2585 (WebCore::PlatformEvent::modifiers):
2586 (WebCore::PlatformEvent::PlatformEvent):
2587 Switch to storing the modifiers as bits on an unsigned
2588 instead of as individual bools.
2590 * platform/PlatformGestureEvent.h:
2591 Remove unused timestamp member.
2593 * platform/PlatformKeyboardEvent.h:
2594 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2595 (WebCore::PlatformKeyboardEvent::keyIdentifier):
2596 (WebCore::PlatformKeyboardEvent::macCharCode):
2597 (WebCore::PlatformKeyboardEvent::isSystemKey):
2598 Give this class a more consistent interface across platforms,
2599 and remove constructor that took an NSEvent.
2601 * platform/PlatformMouseEvent.h:
2602 Remove constructor that took an NSEvent (and an unused constructor that took
2603 many arguments) as well as some free functions for point conversion.
2605 * platform/PlatformWheelEvent.h:
2606 Remove constructor that took an NSEvent and an unnecessary override of the timestamp()
2609 * platform/mac/KeyEventMac.mm:
2610 Removed constructor and moved helpers to PlatformEventFactory.
2612 * platform/mac/PlatformEventFactory.h: Added.
2613 * platform/mac/PlatformEventFactory.mm: Added.
2614 (WebCore::globalPoint):
2615 (WebCore::globalPointForEvent):
2616 (WebCore::pointForEvent):
2617 (WebCore::mouseButtonForEvent):
2618 (WebCore::mouseEventTypeForEvent):
2619 (WebCore::clickCountForEvent):
2620 (WebCore::momentumPhaseForEvent):
2621 (WebCore::phaseForEvent):
2622 (WebCore::gestureEventTypeForEvent):
2623 (WebCore::textFromEvent):
2624 (WebCore::unmodifiedTextFromEvent):
2625 (WebCore::keyIdentifierForKeyEvent):
2626 (WebCore::isKeypadEvent):
2627 (WebCore::windowsKeyCodeForKeyEvent):
2628 (WebCore::isKeyUpEvent):
2629 (WebCore::modifiersForEvent):
2630 (WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder):
2631 (WebCore::PlatformEventFactory::createPlatformMouseEvent):
2632 (WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder):
2633 (WebCore::PlatformEventFactory::createPlatformWheelEvent):
2634 (WebCore::PlatformKeyboardEventBuilder::PlatformKeyboardEventBuilder):
2635 (WebCore::PlatformEventFactory::createPlatformKeyboardEvent):
2636 (WebCore::PlatformGestureEventBuilder::PlatformGestureEventBuilder):
2637 (WebCore::PlatformEventFactory::createPlatformGestureEvent):
2638 Consolidate platform event creation logic and add factory functions.
2640 * platform/mac/PlatformMouseEventMac.mm: Removed.
2641 * platform/mac/WheelEventMac.mm: Removed.
2643 * platform/mac/WebCoreSystemInterface.h:
2644 * platform/mac/WebCoreSystemInterface.mm:
2645 Expose wkGetNSEventKeyChar in WebCore.
2647 * platform/gtk/PlatformKeyboardEventGtk.cpp:
2648 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2649 * platform/gtk/PlatformMouseEventGtk.cpp:
2650 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2651 * platform/gtk/PlatformWheelEventGtk.cpp:
2652 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2653 * platform/qt/PlatformKeyboardEventQt.cpp:
2654 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2655 * platform/qt/PlatformMouseEventQt.cpp:
2656 (WebCore::mouseEventModifiersFromQtKeyboardModifiers):
2657 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2658 * platform/qt/PlatformTouchEventQt.cpp:
2659 (WebCore::PlatformTouchEvent::PlatformTouchEvent):
2660 * platform/win/KeyEventWin.cpp:
2661 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2662 * platform/win/WheelEventWin.cpp:
2663 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2664 Update for new variables/names.
2666 2011-12-22 Andreas Kling <kling@webkit.org>
2668 CSSParser: Avoid creating dummy declaration in parseColor() slow path.
2669 <http://webkit.org/b/75104>
2671 Reviewed by Darin Adler.
2673 We only needed the dummy declaration to trigger the instantiation of
2674 a CSSValuePool. Added an ensureCSSValuePool() method and have parseColor()
2677 Also renamed the fast-path parseColor() to fastParseColor() and reordered
2678 the arguments for consistency with the slow-path parseColor().
2680 * css/CSSParser.cpp:
2681 (WebCore::parseColorValue):
2682 (WebCore::CSSParser::parseColor):
2683 (WebCore::CSSParser::ensureCSSValuePool):
2684 (WebCore::CSSParser::fastParseColor):
2685 (WebCore::CSSParser::parseColorFromValue):
2688 2011-12-21 Andreas Kling <kling@webkit.org>
2690 Automate elements' registration as document namedItem/extraNamedItem.
2691 <http://webkit.org/b/74991>
2693 Reviewed by Antti Koivisto.
2695 Remove caching of the "id" and "name" attributes on applet, embed, form,
2696 image and object elements. We were caching them to keep the document's
2697 map of named and "extra named" (named by id) item counts in sync.
2699 Instead, add a hook to Element::willModifyAttribute() that detects when
2700 the attributes are being changed and handle the registration/unregistration
2701 automatically if the element returns true for shouldRegisterAsNamedItem()
2702 or shouldRegisterAsExtraNamedItem() respectively.
2704 This shrinks the elements by two AtomicStrings (8 or 16 bytes) each.
2706 IFrame elements retain the old mechanism for now, as there are some subtle
2707 differences to how that's handled.
2710 (WebCore::Node::hasName):
2711 (WebCore::Node::setHasName):
2713 Cache whether we have a "name" attribute or not (1 bit on Node.)
2714 This is done in order to minimize the overhead added to Element's
2715 insertedIntoDocument() and removeFromDocument().
2717 * dom/StyledElement.cpp:
2718 (WebCore::StyledElement::attributeChanged):
2720 Update the Node's has-name flag as appropriate.
2723 (WebCore::Element::updateNamedItemRegistration):
2724 (WebCore::Element::updateExtraNamedItemRegistration):
2726 Added. Called when the "name" and "id" attributes are changed.
2727 Updates the document's named item maps accordingly.
2729 (WebCore::Element::insertedIntoDocument):
2730 (WebCore::Element::removedFromDocument):
2732 Make sure updateName() is called in addition to updateId() when applicable.
2735 (WebCore::Element::shouldRegisterAsNamedItem):
2736 (WebCore::Element::shouldRegisterAsExtraNamedItem):
2738 Added. If an element returns true for these, it will be automatically
2739 registered with the document when the name/id attribute changes.
2741 (WebCore::Element::updateId):
2742 (WebCore::Element::updateName):
2744 Register/unregister from the document's named item maps as appropriate.
2746 (WebCore::Element::willModifyAttribute):
2748 Add updateName() hook in addition to the existing updateId() hook.
2750 * dom/NamedNodeMap.cpp:
2751 (WebCore::NamedNodeMap::setAttributes):
2753 Make sure updateName() is called when we're cloning the attributes
2754 from another element.
2756 * html/HTMLAppletElement.cpp:
2757 (WebCore::HTMLAppletElement::parseMappedAttribute):
2758 * html/HTMLAppletElement.h:
2759 * html/HTMLEmbedElement.cpp:
2760 (WebCore::HTMLEmbedElement::parseMappedAttribute):
2761 (WebCore::HTMLEmbedElement::insertedIntoDocument):
2762 * html/HTMLEmbedElement.h:
2763 * html/HTMLFormElement.cpp:
2764 (WebCore::HTMLFormElement::insertedIntoDocument):
2765 (WebCore::HTMLFormElement::removedFromDocument):
2766 (WebCore::HTMLFormElement::parseMappedAttribute):
2767 * html/HTMLFormElement.h:
2768 * html/HTMLImageElement.cpp:
2769 (WebCore::HTMLImageElement::parseMappedAttribute):
2770 (WebCore::HTMLImageElement::insertedIntoDocument):
2771 * html/HTMLImageElement.h:
2772 * html/HTMLObjectElement.cpp:
2773 (WebCore::HTMLObjectElement::parseMappedAttribute):
2774 (WebCore::HTMLObjectElement::insertedIntoDocument):
2775 (WebCore::HTMLObjectElement::removedFromDocument):
2776 * html/HTMLObjectElement.h:
2777 * html/HTMLPlugInElement.h:
2779 Remove duplicated code that is now handled by Element.
2781 * html/HTMLObjectElement.cpp:
2782 (WebCore::HTMLObjectElement::updateDocNamedItem):
2783 (WebCore::HTMLObjectElement::formControlName):
2785 Use fastGetAttribute() since we no longer cache the name.
2787 2011-12-23 Anders Carlsson <andersca@apple.com>
2789 Add two (currently unused) new member functions to ScrollElasticityControllerClient
2790 https://bugs.webkit.org/show_bug.cgi?id=75179
2792 Reviewed by Dan Bernstein.
2794 This is so we'll be able to move more code to ScrollElasticityController.
2796 * platform/mac/ScrollAnimatorMac.h:
2797 * platform/mac/ScrollAnimatorMac.mm:
2798 (WebCore::ScrollAnimatorMac::pinnedInDirection):
2799 (WebCore::ScrollAnimatorMac::immediateScrollByWithoutContentEdgeConstraints):
2800 * platform/mac/ScrollElasticityController.h:
2802 2011-12-23 Simon Fraser <simon.fraser@apple.com>
2804 Blur filter doesn't invalidate enough
2805 https://bugs.webkit.org/show_bug.cgi?id=74891
2807 Reviewed by Darin Adler.
2809 Take the effects of filters into account for repainting; we need
2810 to inflate the repaint rect by the outsets provided by the filter.
2812 Test: css3/filters/filter-repaint.html
2814 * rendering/RenderBox.cpp:
2815 (WebCore::RenderBox::computeRectForRepaint):
2816 * rendering/RenderInline.cpp:
2817 (WebCore::RenderInline::computeRectForRepaint):
2819 2011-12-23 Simon Fraser <simon.fraser@apple.com>
2821 Filters should apply to inline elements
2822 https://bugs.webkit.org/show_bug.cgi?id=75152
2824 Reviewed by Darin Adler.
2826 Filters need to cause creation of RenderLayers for inlines, just like
2827 opacity and masks do.
2829 Test: css3/filters/filtered-inline.html
2831 * rendering/RenderInline.h:
2832 (WebCore::RenderInline::requiresLayer):
2833 * rendering/RenderTableRow.h: Remove an obviously incorrect comment.
2835 2011-12-23 Jarred Nicholls <jarred@sencha.com>
2837 Synchronous XHR in window context should not support new XHR responseTypes for HTTP(S) requests
2838 https://bugs.webkit.org/show_bug.cgi?id=72154
2840 Per the latest W3C editor draft: http://dvcs.w3.org/hg/xhr/raw-file/tip/Overview.html
2841 This is a spec-mandated attempt to thwart and otherwise discourage the use of synchronous XHR
2842 in the window context by deliberately not exposing newer functionality. Here we are disabling
2843 the use of responseType in synchronous HTTP(S) XHR requests from the window context.
2845 When a user attempts this action, an InvalidAccessError exception is thrown and a message is
2846 printed to the console to further explain.
2848 Renamed reportUnsafeUsage to a more generic name, and hoisted it up so it would be defined
2849 earlier and thus referenceable by setResponseType.
2851 Reviewed by Alexey Proskuryakov.
2853 Test: fast/xmlhttprequest/xmlhttprequest-responsetype-sync-request.html
2855 * xml/XMLHttpRequest.cpp:
2856 (WebCore::logConsoleError):
2857 reportUnsafeUsage -> logConsoleError
2858 (WebCore::XMLHttpRequest::setResponseType):
2859 (WebCore::XMLHttpRequest::setRequestHeader):
2860 reportUnsafeUsage -> logConsoleError
2861 (WebCore::XMLHttpRequest::getResponseHeader):
2862 reportUnsafeUsage -> logConsoleError
2863 (WebCore::XMLHttpRequest::didFail):
2864 reportUnsafeUsage -> logConsoleError
2866 2011-12-23 Alexander Pavlov <apavlov@chromium.org>
2868 Web Inspector: Implement a worker for parsing out JavaScript function data
2869 https://bugs.webkit.org/show_bug.cgi?id=75166
2871 Reviewed by Pavel Feldman.
2873 Test: inspector/debugger/script-extract-outline.html
2875 * inspector/front-end/ScriptFormatter.js:
2876 (WebInspector.ScriptFormatter.prototype.formatContent):
2877 * inspector/front-end/ScriptFormatterWorker.js:
2882 (Array.prototype.keySet):
2884 2011-12-23 Ilya Tikhonovsky <loislo@chromium.org>
2886 Unreviewed, rolling out r103624.
2887 http://trac.webkit.org/changeset/103624
2888 https://bugs.webkit.org/show_bug.cgi?id=68916
2890 Broke Snow Leopard builders
2893 * DerivedSources.cpp:
2894 * DerivedSources.pri:
2895 * GNUmakefile.list.am:
2897 * WebCore.xcodeproj/project.pbxproj:
2898 * bindings/js/JSDirectoryEntryCustom.cpp:
2899 (WebCore::JSDirectoryEntry::getFile):
2900 (WebCore::JSDirectoryEntry::getDirectory):
2901 * bindings/js/JSDirectoryEntrySyncCustom.cpp:
2902 (WebCore::getFlags):
2903 * bindings/v8/custom/V8DirectoryEntryCustom.cpp:
2904 (WebCore::V8DirectoryEntry::getDirectoryCallback):
2905 (WebCore::V8DirectoryEntry::getFileCallback):
2906 * bindings/v8/custom/V8DirectoryEntrySyncCustom.cpp:
2907 (WebCore::getFlags):
2908 * fileapi/WebKitFlags.idl: Added.
2909 * page/DOMWindow.idl:
2910 * workers/WorkerContext.idl:
2912 2011-12-23 Eric Uhrhane <ericu@chromium.org>
2914 [fileapi] WebKitFlags should not be constructable per Directories & System spec
2915 https://bugs.webkit.org/show_bug.cgi?id=68916
2917 Reviewed by Eric Seidel.
2919 Remove IDL for the object and all DOM references to it.
2920 * fileapi/WebKitFlags.idl: Removed.
2921 * page/DOMWindow.idl:
2922 * workers/WorkerContext.idl:
2923 Remove references to the JSC/V8 objects compiled from the IDL.
2924 * bindings/js/JSDirectoryEntryCustom.cpp:
2925 (WebCore::JSDirectoryEntry::getFile):
2926 (WebCore::JSDirectoryEntry::getDirectory):
2927 * bindings/js/JSDirectoryEntrySyncCustom.cpp:
2928 (WebCore::getFlags):
2929 * bindings/v8/custom/V8DirectoryEntryCustom.cpp:
2930 (WebCore::V8DirectoryEntry::getDirectoryCallback):
2931 (WebCore::V8DirectoryEntry::getFileCallback):
2932 * bindings/v8/custom/V8DirectoryEntrySyncCustom.cpp:
2933 (WebCore::getFlags):
2936 * WebCore.vcproj/WebCore.vcproj:
2937 * WebCore.xcodeproj/project.pbxproj:
2938 * WebCore/CMakeLists.txt:
2939 * WebCore/CodeGenerators.pri:
2940 * WebCore/DerivedSources.cpp:
2941 * WebCore/GNUmakefile.list.am:
2943 2011-12-23 Pavel Feldman <pfeldman@google.com>
2945 Web Inspector: Migrate to native Function.prototype.bind; fix front-end compilation with the
2946 version of compiler that respects Function.prototype.bind.
2947 https://bugs.webkit.org/show_bug.cgi?id=75170
2949 Reviewed by Yury Semikhatsky.
2951 * inspector/front-end/ApplicationCacheModel.js:
2952 * inspector/front-end/CSSKeywordCompletions.js:
2953 (WebInspector.CSSKeywordCompletions.colors):
2954 * inspector/front-end/CSSStyleModel.js:
2955 * inspector/front-end/CompilerSourceMapping.js:
2956 * inspector/front-end/DOMAgent.js:
2957 (WebInspector.DOMAgent.prototype.pushNodeToFrontend):
2958 (WebInspector.DOMAgent.prototype.pushNodeByPathToFrontend):
2959 (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable.onDocumentAvailable):
2960 (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable):
2961 (WebInspector.DOMAgent.prototype._loadNodeAttributes):
2962 (WebInspector.DOMAgent.prototype.querySelector):
2963 (WebInspector.DOMAgent.prototype.querySelectorAll):
2964 * inspector/front-end/DebuggerModel.js:
2965 * inspector/front-end/DebuggerPresentationModel.js:
2966 * inspector/front-end/ExtensionAPI.js:
2967 (injectedExtensionAPI.InspectorExtensionAPI):
2968 (injectedExtensionAPI):
2969 * inspector/front-end/ExtensionPanel.js:
2970 * inspector/front-end/NetworkManager.js:
2971 (WebInspector.NetworkManager.prototype.enableResourceTracking):
2972 (WebInspector.NetworkManager.prototype.disableResourceTracking):
2973 * inspector/front-end/Script.js:
2974 * inspector/front-end/Settings.js:
2975 * inspector/front-end/TextPrompt.js:
2976 (WebInspector.TextPrompt.prototype.complete):
2977 * inspector/front-end/utilities.js:
2979 2011-12-23 Leo Yang <leo.yang@torchmobile.com.cn>
2981 [BlackBerry] Add the BlackBerry specific pauseLoad(bool) to ResourceHandle
2982 https://bugs.webkit.org/show_bug.cgi?id=75162
2984 Reviewed by George Staikos.
2986 The porting can be built now, no new tests so far.
2988 * platform/network/ResourceHandle.h:
2990 2011-12-23 Karl Koscher <supersat@chromium.org>
2992 Give embedders a chance to handle postMessage calls
2993 https://bugs.webkit.org/show_bug.cgi?id=73883
2995 To support cross-process postMessage calls in Chromium (bug 73337), we need to intercept
2996 postMessage calls to proxy windows. Originally we were just going to add a native event
2997 listener on the Chromium side, but that required more changes to WebKit and was a bit of
2998 a hack. See bug 73359 for a discuss about moving to this approach.
3000 Reviewed by Adam Barth.
3002 Test: platform/chromium/fast/events/intercept-postmessage.html
3004 * loader/FrameLoaderClient.h:
3005 (WebCore::FrameLoaderClient::willCheckAndDispatchPostMessage): new method to allow the
3006 embedder to intercept postMessage calls
3007 * page/DOMWindow.cpp:
3008 (WebCore::DOMWindow::postMessageTimerFired): add a call to
3009 FrameLoaderClient::willCheckAndDispatchPostMessage
3011 2011-12-23 Tom Sepez <tsepez@chromium.org>
3013 XSLT-created HTML documents do not inherit content-security-policy from originally loaded XML.
3014 https://bugs.webkit.org/show_bug.cgi?id=75043
3016 Reviewed by Adam Barth.
3018 Test: http/tests/security/contentSecurityPolicy/xsl-img-blocked.php
3020 * page/ContentSecurityPolicy.cpp:
3021 (WebCore::ContentSecurityPolicy::copyStateFrom):
3022 (WebCore::ContentSecurityPolicy::didReceiveHeader):
3023 * page/ContentSecurityPolicy.h:
3024 * xml/XSLTProcessor.cpp:
3025 (WebCore::XSLTProcessor::createDocumentFromSource):
3027 2011-12-23 Darin Adler <darin@apple.com>
3029 REGRESSION (r97533): Optgroup label is not disabled
3030 https://bugs.webkit.org/show_bug.cgi?id=74869
3032 Reviewed by Alexey Proskuryakov.
3034 * rendering/RenderMenuList.cpp:
3035 (WebCore::RenderMenuList::itemIsEnabled): Added back a line of code that was
3036 accidentally deleted as part of the refactoring in r97533. This line of code
3037 ensures that any items that are not option elements are disabled.
3039 2011-12-19 Alexander Pavlov <apavlov@chromium.org>
3041 Web Inspector: Add CSSStyleSelector instrumentation calls towards implementing a CSS selector profiler
3042 https://bugs.webkit.org/show_bug.cgi?id=74863
3044 Performance checks run on PerformanceTest/Parser/html5-full-render.html did not result in any noticeable
3045 perf regression, as the instrumentation calls are inline and bail out early if there are no
3046 Web Inspector frontends open.
3048 Reviewed by Antti Koivisto.
3050 No new tests, as the functionality is not bound to any user-visible outputs.
3052 * css/CSSStyleSelector.cpp:
3053 (WebCore::CSSStyleSelector::matchRulesForList):
3054 (WebCore::CSSStyleSelector::applyDeclaration):
3055 * inspector/InspectorInstrumentation.cpp:
3056 (WebCore::InspectorInstrumentation::willMatchRuleImpl):
3057 (WebCore::InspectorInstrumentation::didMatchRuleImpl):
3058 (WebCore::InspectorInstrumentation::willProcessRuleImpl):
3059 (WebCore::InspectorInstrumentation::didProcessRuleImpl):
3060 * inspector/InspectorInstrumentation.h:
3061 (WebCore::InspectorInstrumentation::willMatchRule):
3062 (WebCore::InspectorInstrumentation::didMatchRule):
3063 (WebCore::InspectorInstrumentation::willProcessRule):
3064 (WebCore::InspectorInstrumentation::didProcessRule):
3066 2011-12-23 Ivan Briano <ivan@profusion.mobi>
3068 [EFL] Fix building with Glib support disabled
3069 https://bugs.webkit.org/show_bug.cgi?id=70990
3071 Reviewed by Martin Robinson.
3073 Add forward declaration for cairo_surface_t, missing when building
3074 the EFL port with Glib disabled.
3076 * platform/cairo/WidgetBackingStore.h:
3078 2011-12-23 Adam Klein <adamk@chromium.org>
3080 Minimize callsites and duplication of before/after advice for attribute mutations
3081 https://bugs.webkit.org/show_bug.cgi?id=75054
3083 Reviewed by Ryosuke Niwa.
3085 r103452 helpfully made before and after advice regarding attribute
3086 changes symmetrical. This change finishes that work, by pulling
3087 together all the before/after work, not just the crumbs previously
3088 covered. This includes incrementing Document::domTreeVersion()
3089 when an attribute is about to be changed, Inspector instrumentation,
3090 and MutationEvent dispatch. This is in addition to the previous code,
3091 which handled enqueueing MutationRecords for MutationObservers and
3092 updating the Document's list of IDs.
3094 The only change in behavior should be in InspectorInstrumentation,
3095 which causes DOM breakpoints to occur for more cases of Attribute
3096 mutation. This seems like more correct behavior, and a test has
3097 been included to exercise it.
3099 Hopefully the last Attribute-related refactor for awhile.
3102 (WebCore::Attr::setValue): Update to call didModifyAttribute instead
3103 of attributeChanged.
3105 (WebCore::Element::removeAttribute): Got rid of
3106 removeAttributeInternal as most of that logic moved back into
3107 NamedNodeMap::removeAttribute.
3108 (WebCore::Element::setAttributeInternal): Reorganized to read better
3109 now that only some cases result in calls to will/didModifyAttribute.
3110 (WebCore::Element::willModifyAttribute): Un-inlined and added
3111 incDOMTreeVersion and InspectorInstrumentation calls.
3112 (WebCore::Element::didModifyAttribute): New method which encapsulates
3113 calling attributeChanged, InspectorInstrumentation, and MutationEvents.
3114 (WebCore::Element::didRemoveAttribute): New method which encapsulates
3115 calling attributeChanged, InspectorInstrumentation, and MutationEvents.
3116 Separate from didModifyAttribute because it has special handling of
3117 the removed Attribute's value.
3119 (WebCore::Element::willRemoveAttribute): New method which delegates to
3120 willModifyAttribute as appropriate.
3121 * dom/NamedNodeMap.cpp:
3122 (WebCore::NamedNodeMap::setNamedItem): Simplified.
3123 (WebCore::NamedNodeMap::removeNamedItem): Simplified.
3124 (WebCore::NamedNodeMap::addAttribute): Added calls to will/didModifyAttribute.
3125 (WebCore::NamedNodeMap::removeAttribute): ditto.
3126 (WebCore::NamedNodeMap::replaceAttribute): ditto.
3127 * svg/properties/SVGAnimatedPropertySynchronizer.h: Reverted changes
3128 made in r103452 now that addAttribute/removeAttribute once again
3129 call attributeChanged appropriately.
3131 2011-12-22 Matt Falkenhagen <falken@chromium.org>
3133 Map 'lang' and xml:lang attributes to '-webkit-locale' CSS property for use with font fallback and text-transform
3134 https://bugs.webkit.org/show_bug.cgi?id=67586
3136 Original patch by Jungshik Shin <jshin@chromium.org>
3138 Reviewed by Darin Adler.
3140 Tests: fast/text/lang-mapped-to-webkit-locale.xhtml
3141 fast/text/xml-lang-ignored-in-html.html
3143 * html/HTMLElement.cpp:
3144 (WebCore::HTMLElement::mapLanguageAttributeToLocale):
3145 (WebCore::HTMLElement::parseMappedAttribute): Map 'lang' and 'xml:lang' to -webkit-locale.
3146 * html/HTMLElement.h:
3148 2011-12-22 Ryosuke Niwa <rniwa@webkit.org>
3150 WinCE build fix after r103539.
3152 * rendering/svg/RenderSVGResource.cpp:
3153 (WebCore::RenderSVGResource::removeFromFilterCache):
3155 2011-12-22 Chris Marrin <cmarrin@apple.com>
3157 Crash and incorrect behavior when switching between hardware and software CSS filters
3158 https://bugs.webkit.org/show_bug.cgi?id=75130
3160 Reviewed by Simon Fraser.
3162 Test: css3/filters/crash-hw-sw-switch.html
3164 Backing store on layer gets fixed up (added or removed) after style change is evaluated
3165 so the state of the m_filter variable might not match the current filter state. Added
3166 updateOrRemoveFilterEffect() call to ensureBacking() and clearBacking() to get the
3167 m_filter property in the right state. Also added an ASSERT() where the crash was
3170 * rendering/RenderLayer.cpp:
3171 (WebCore::RenderLayer::paintLayer):
3172 (WebCore::RenderLayer::ensureBacking):
3173 (WebCore::RenderLayer::clearBacking):
3175 2011-12-22 Jon Lee <jonlee@apple.com>
3177 Radio buttons cut in download movie sheet
3178 https://bugs.webkit.org/show_bug.cgi?id=75128
3179 <rdar://problem/9399450>
3181 Reviewed by Dan Bernstein.
3183 Test: compositing/overflow/theme-affects-visual-overflow.html
3185 The clipping comes from the fact the visual overflow rect of the radio button's
3186 RenderBlock is not expanded to accommodate for the size of the button on the Mac
3187 platform. We use the existing RenderTheme::adjustRepaintRect() to make the
3188 appropriate adjustment. This, consequently, makes it unnecessary to have to
3189 recalculate it for repaint.
3191 * rendering/RenderBlock.cpp:
3192 (WebCore::RenderBlock::computeOverflow): As part of the overflow computation, we
3193 make a call to addVisualOverflowFromTheme().
3194 (WebCore::RenderBlock::addVisualOverflowFromTheme): Ask the theme to inflate the
3195 RenderBlock's rect if necessary, and add that to the visual overflow rect.
3196 * rendering/RenderBlock.h: Added addVisualOverflowFromTheme().
3197 * rendering/RenderBox.cpp:
3198 (WebCore::RenderBox::clippedOverflowRectForRepaint): Remove the call to
3199 adjustRepaintRect() since the rectangle r already uses the new visual overflow
3201 * rendering/RenderReplaced.cpp:
3202 (WebCore::RenderReplaced::clippedOverflowRectForRepaint): Remove the call to
3203 adjustRepaintRect() since the rectangle r already uses the new visual overflow
3206 2011-12-22 Chris Rogers <crogers@google.com>
3208 Fix mac build breakage - add SincResampler files to WebCore.xcodeproj
3209 https://bugs.webkit.org/show_bug.cgi?id=75139
3211 Unreviewed build fix.
3213 * WebCore.xcodeproj/project.pbxproj:
3215 2011-12-22 Simon Fraser <simon.fraser@apple.com>
3217 Animating some CSS filter values is wrong
3218 https://bugs.webkit.org/show_bug.cgi?id=75122
3220 Reviewed by Chris Marrin.
3222 Fix some reversed filter animation behavior for brightness,
3223 contrast and drop-shadow filters.
3225 Test: css3/filters/filter-animation-from-none.html
3227 * platform/graphics/filters/FilterOperation.cpp:
3228 (WebCore::BasicComponentTransferFilterOperation::blend): Just use the global blend() function.
3229 (WebCore::BasicComponentTransferFilterOperation::passthroughAmount): Add CONTRAST and BRIGHTNESS to the sswitch.
3230 (WebCore::GammaFilterOperation::blend): Fix the ordering.
3231 (WebCore::DropShadowFilterOperation::blend): Fix the ordering.
3233 2011-12-22 Chris Rogers <crogers@google.com>
3235 Fix mac build caused by improper include of "Locker.h"
3236 https://bugs.webkit.org/show_bug.cgi?id=75134
3238 Unreviewed build fix.
3240 * webaudio/MediaElementAudioSourceNode.cpp:
3242 2011-12-22 Anders Carlsson <andersca@apple.com>
3244 More ScrollAnimatorMac cleanup
3245 https://bugs.webkit.org/show_bug.cgi?id=75127
3247 Reviewed by Andreas Kling.
3249 Introduce a immediateScrollByWithoutContentEdgeConstraints and use it whenever we want to scroll by an
3250 offset instead of doing the setConstrainsScrollingToContentEdge dance.
3252 * platform/mac/ScrollAnimatorMac.h:
3253 * platform/mac/ScrollAnimatorMac.mm:
3254 (WebCore::ScrollAnimatorMac::immediateScrollByWithoutContentEdgeConstraints):
3255 (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
3256 (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
3258 2011-12-22 Chris Rogers <crogers@google.com>
3260 Implement MediaElementAudioSourceNode::setFormat() so numberOfChannels and sampleRate are accounted for
3261 https://bugs.webkit.org/show_bug.cgi?id=75057
3263 Reviewed by Eric Carlson.
3265 * GNUmakefile.list.am:
3267 * WebCore.xcodeproj/project.pbxproj:
3268 Add MultiChannelResampler source files to makefiles.
3269 * platform/audio/MultiChannelResampler.cpp: Added.
3270 (WebCore::MultiChannelResampler::MultiChannelResampler):
3271 (WebCore::MultiChannelResampler::process):
3272 * platform/audio/MultiChannelResampler.h: Added.
3273 Add MultiChannelResampler implementation which uses one SincResampler per channel.
3274 * webaudio/MediaElementAudioSourceNode.cpp:
3275 (WebCore::MediaElementAudioSourceNode::create):
3276 (WebCore::MediaElementAudioSourceNode::MediaElementAudioSourceNode):
3277 (WebCore::MediaElementAudioSourceNode::setFormat):
3278 (WebCore::MediaElementAudioSourceNode::process):
3279 Implement MediaElementAudioSourceNode::setFormat() so that we can
3280 properly setup a sample-rate converter and set the number of channels
3281 of the MediaElementAudioSourceNode output.
3282 * webaudio/MediaElementAudioSourceNode.h:
3284 2011-12-22 Chris Fleizach <cfleizach@apple.com>
3286 AX: WebKit should ignore ARIA role=presentation on focusable elements
3287 https://bugs.webkit.org/show_bug.cgi?id=75101
3289 Reviewed by Darin Adler.
3291 If an element is focusable, the presentational role must be ignored, lest the user not be able
3292 to interact with something important.
3294 Test: accessibility/presentational-elements-with-focus.html
3296 * accessibility/AccessibilityRenderObject.cpp:
3297 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
3298 (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
3299 (WebCore::AccessibilityRenderObject::inheritsPresentationalRole):
3301 2011-12-22 Anders Carlsson <andersca@apple.com>
3303 Use immediateScrollBy instead of immediateScrollTo where possible
3304 https://bugs.webkit.org/show_bug.cgi?id=75124
3306 Reviewed by Sam Weinig.
3308 Instead of computing the position to scroll to, just compute the delta and use scrollBy instead.
3310 * platform/mac/ScrollAnimatorMac.mm:
3311 (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
3312 (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
3314 2011-12-22 Anders Carlsson <andersca@apple.com>
3316 Remove a private ScrollAnimatorMac getter/setter and just update the member variable directly
3317 https://bugs.webkit.org/show_bug.cgi?id=75121
3319 Reviewed by Sam Weinig.
3321 * platform/mac/ScrollAnimatorMac.h:
3322 * platform/mac/ScrollAnimatorMac.mm:
3323 (WebCore::ScrollAnimatorMac::setIsActive):
3324 (WebCore::ScrollAnimatorMac::updateScrollerStyle):
3326 2011-12-22 Anders Carlsson <andersca@apple.com>
3328 Simplify ScrollAnimatorMac scrollByDelta functions
3329 https://bugs.webkit.org/show_bug.cgi?id=75120
3331 Reviewed by Sam Weinig.
3333 Merge immediateScrollByDeltaX and immediateScrollByDeltaY to a single function and rename it
3334 to immediateScrollBy. Also, rename immediateScrollToPoint to immediateScrollTo.
3336 * platform/mac/ScrollAnimatorMac.h:
3337 * platform/mac/ScrollAnimatorMac.mm:
3338 (WebCore::ScrollAnimatorMac::scrollToOffsetWithoutAnimation):
3339 (WebCore::ScrollAnimatorMac::immediateScrollTo):
3340 (WebCore::ScrollAnimatorMac::immediateScrollBy):
3341 (WebCore::ScrollAnimatorMac::immediateScrollToPointForScrollAnimation):
3342 (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
3343 (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
3345 2011-12-22 Anders Carlsson <andersca@apple.com>
3347 Make some ScrollAnimatorMac member functions private
3348 https://bugs.webkit.org/show_bug.cgi?id=75117
3350 Reviewed by Sam Weinig.
3352 Make virtual member functions and functions that are only called from ScrollAnimatorMac private.
3354 * platform/mac/ScrollAnimatorMac.h:
3356 2011-12-22 Anders Carlsson <andersca@apple.com>
3358 Move some member variables out of ScrollElasticityController
3359 https://bugs.webkit.org/show_bug.cgi?id=75115
3361 Reviewed by Adam Roben.
3363 Move a couple of member variables that aren't related to rubberbanding out from
3364 ScrollElasticityController and back into ScrollAnimatorMac and remove now unneeded
3365 ScrollElasticityControllerClient member functions as well.
3367 * platform/mac/ScrollAnimatorMac.h:
3368 * platform/mac/ScrollAnimatorMac.mm:
3369 (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
3370 (WebCore::ScrollAnimatorMac::handleWheelEvent):
3371 (WebCore::ScrollAnimatorMac::beginScrollGesture):
3372 * platform/mac/ScrollElasticityController.h:
3373 * platform/mac/ScrollElasticityController.mm:
3374 (WebCore::ScrollElasticityController::ScrollElasticityController):
3375 (WebCore::ScrollElasticityController::beginScrollGesture):
3377 2011-12-22 Balazs Kelemen <kbalazs@webkit.org>
3379 Fix debug build with assertions disabled
3380 https://bugs.webkit.org/show_bug.cgi?id=75075
3382 Reviewed by Darin Adler.
3384 Check whether assertions are disabled instead of NDEBUG
3385 where appropriate to avoid "defined but not used" warnings.
3387 No change in behaviour so no new tests.
3389 * loader/cache/MemoryCache.cpp:
3390 (WebCore::MemoryCache::insertInLRUList):
3391 (WebCore::MemoryCache::removeFromLiveDecodedResourcesList):
3392 (WebCore::MemoryCache::insertInLiveDecodedResourcesList):
3393 * rendering/RenderBlock.cpp:
3394 (WebCore::RenderBlock::layoutBlockChild):
3395 * rendering/RenderLayer.cpp:
3396 (WebCore::RenderLayer::updateLayerPositions):
3398 2011-12-22 Anders Carlsson <andersca@apple.com>
3400 Get rid of didStartAnimatedScroll and didCompleteAnimatedScroll
3401 https://bugs.webkit.org/show_bug.cgi?id=75107
3403 Reviewed by Adam Roben.
3405 This is another step towards removing the display throttling in WebKit2.
3407 * page/ChromeClient.h:
3408 * page/FrameView.cpp:
3410 * platform/ScrollableArea.h:
3411 * platform/mac/ScrollAnimatorMac.mm:
3412 (WebCore::ScrollAnimatorMac::scroll):
3413 (WebCore::ScrollAnimatorMac::immediateScrollToPointForScrollAnimation):
3415 2011-12-22 Anders Carlsson <andersca@apple.com>
3417 Remove didStartRubberBand and didCompleteRubberBand callbacks
3418 https://bugs.webkit.org/show_bug.cgi?id=75102
3420 Reviewed by Adam Roben.
3422 The code to do display throttling in WebKit2 is complex and doesn't really help us except
3423 on an old benchmark that's no longer representative of real-world behavior; let's rip it out instead.
3425 * page/ChromeClient.h:
3426 * page/FrameView.cpp:
3428 * platform/ScrollView.cpp:
3429 * platform/ScrollView.h:
3430 * platform/ScrollableArea.h:
3431 * platform/mac/ScrollAnimatorMac.mm:
3432 (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
3433 * rendering/RenderLayer.cpp:
3434 * rendering/RenderLayer.h:
3436 2011-12-22 Vsevolod Vlasov <vsevik@chromium.org>
3438 Web Inspector: [Regression] Network item view is not displayed.
3439 https://bugs.webkit.org/show_bug.cgi?id=75100
3441 Not reviewed, one line css fix.
3443 * inspector/front-end/networkPanel.css:
3444 (.network-item-view.visible):
3446 2011-12-22 Andreas Kling <kling@webkit.org>
3448 NamedNodeMap: Get rid of declCount().
3449 <http://webkit.org/b/74948>
3451 Reviewed by Darin Adler.
3453 We already have the number of mapped attribute declarations in the map
3454 stored in m_mappedAttributeCount (updated by declAdded()/declRemoved())
3455 so compare that in mappedMapsEquivalent() to skip one loop over the map.
3457 * dom/NamedNodeMap.cpp:
3458 (WebCore::NamedNodeMap::mappedMapsEquivalent):
3459 * dom/NamedNodeMap.h:
3461 2011-12-22 Andreas Kling <kling@webkit.org>
3463 SnowLeopard crashes due to thread-unsafe EventListenerIterator ASSERTs
3464 <http://webkit.org/b/74260>
3466 Reviewed by Darin Adler.
3468 Guard EventListenerMap::m_activeIteratorCount with a mutex.
3470 * dom/EventListenerMap.cpp:
3471 (WebCore::activeIteratorCountMutex):
3472 (WebCore::EventListenerMap::assertNoActiveIterators):
3473 (WebCore::EventListenerMap::clear):
3474 (WebCore::EventListenerMap::add):
3475 (WebCore::EventListenerMap::remove):
3476 (WebCore::EventListenerMap::find):
3477 (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
3478 (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
3479 (WebCore::EventListenerIterator::EventListenerIterator):
3480 (WebCore::EventListenerIterator::~EventListenerIterator):
3481 * dom/EventListenerMap.h:
3482 (WebCore::EventListenerMap::assertNoActiveIterators):
3484 2011-12-22 Vsevolod Vlasov <vsevik@chromium.org>
3486 Web Inspector: TabbedPane should support closeable tabs, hiding tabs into drop down menu.