1 2011-12-29 Alexis Menard <alexis.menard@openbossa.org>
3 getComputedStyle for padding is not implemented.
4 https://bugs.webkit.org/show_bug.cgi?id=75352
6 Reviewed by Andreas Kling.
8 Implement getComputedStyle for padding shorthand property.
10 Test: fast/css/getComputedStyle/getComputedStyle-padding-shorthand.html
12 * css/CSSComputedStyleDeclaration.cpp:
13 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
15 2011-12-29 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
17 Use HashMap<OwnPtr> in OriginAccessMap
18 https://bugs.webkit.org/show_bug.cgi?id=75327
20 Reviewed by Andreas Kling.
22 * page/SecurityPolicy.cpp:
23 (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
24 (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
25 (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
27 2011-12-29 Pavel Podivilov <podivilov@chromium.org>
29 Web Inspector: support sourceMappingURL magic comment.
30 https://bugs.webkit.org/show_bug.cgi?id=75356
32 Reviewed by Pavel Feldman.
34 * inspector/ContentSearchUtils.cpp:
35 (WebCore::ContentSearchUtils::findSourceMapURL):
36 * inspector/ContentSearchUtils.h:
37 * inspector/InspectorDebuggerAgent.cpp:
38 (WebCore::InspectorDebuggerAgent::sourceMapURLForScript):
40 2011-12-29 Alexander Pavlov <apavlov@chromium.org>
42 Web Inspector: Suggest pop-over doesn't hide on tab switch
43 https://bugs.webkit.org/show_bug.cgi?id=73611
45 Reviewed by Pavel Feldman.
47 * inspector/front-end/ConsoleView.js:
48 (WebInspector.ConsoleView.prototype.willHide):
49 * inspector/front-end/TextPrompt.js:
50 (WebInspector.TextPrompt.prototype.complete):
51 (WebInspector.TextPrompt.prototype._completionsReady):
52 (WebInspector.TextPrompt.prototype.acceptSuggestion):
53 (WebInspector.TextPrompt.prototype.hideSuggestBox):
54 (WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
56 2011-12-28 Alexander Pavlov <apavlov@chromium.org>
58 Web Inspector: Implement CSS selector profiler
59 https://bugs.webkit.org/show_bug.cgi?id=74004
61 Reviewed by Pavel Feldman.
63 This implementation of CSS selector profiler measures the total time required to match a certain selector
64 against DOM nodes and apply the style declaration properties to the particular element,
65 as well as the number of selector matches (i.e. the number of nodes that matched the selector.)
66 The results are approximate due to internal matching algorithm optimizations (shared styles et al.)
67 Multiple selectors with the same selectorText are coalesced into a single record.
69 * English.lproj/localizedStrings.js:
71 * WebCore.vcproj/WebCore.vcproj:
72 * inspector/compile-front-end.sh:
73 * inspector/front-end/CSSSelectorProfileView.js: Added.
74 (WebInspector.CSSSelectorDataGridNode):
75 (WebInspector.CSSSelectorDataGridNode.prototype.get rawData):
76 (WebInspector.CSSSelectorProfileView):
77 (WebInspector.CSSSelectorProfileView.prototype.get statusBarItems):
78 (WebInspector.CSSSelectorProfileView.prototype.get profile):
79 (WebInspector.CSSSelectorProfileView.prototype.set profile):
80 (WebInspector.CSSSelectorProfileView.prototype._createProfileNodes):
81 (WebInspector.CSSSelectorProfileView.prototype.rebuildGridItems):
82 (WebInspector.CSSSelectorProfileView.prototype.refreshData):
83 (WebInspector.CSSSelectorProfileView.prototype.refreshShowAsPercents):
84 (WebInspector.CSSSelectorProfileView.prototype._sortProfile.get selectorComparator):
85 (WebInspector.CSSSelectorProfileView.prototype._sortProfile.timeComparator):
86 (WebInspector.CSSSelectorProfileView.prototype._sortProfile.matchesComparator):
87 (WebInspector.CSSSelectorProfileView.prototype._sortProfile):
88 (WebInspector.CSSSelectorProfileType):
89 (WebInspector.CSSSelectorProfileType.prototype.get buttonTooltip):
90 (WebInspector.CSSSelectorProfileType.prototype.buttonClicked):
91 (WebInspector.CSSSelectorProfileType.prototype.get treeItemTitle):
92 (WebInspector.CSSSelectorProfileType.prototype.get description):
93 (WebInspector.CSSSelectorProfileType.prototype.reset):
94 (WebInspector.CSSSelectorProfileType.prototype.isRecordingProfile):
95 (WebInspector.CSSSelectorProfileType.prototype.setRecordingProfile):
96 (WebInspector.CSSSelectorProfileType.prototype.startRecordingProfile):
97 (WebInspector.CSSSelectorProfileType.prototype.stopRecordingProfile):
98 (WebInspector.CSSSelectorProfileType.prototype.createSidebarTreeElementForProfile):
99 (WebInspector.CSSSelectorProfileType.prototype.createView):
100 * inspector/front-end/DetailedHeapshotView.js:
101 * inspector/front-end/ProfileView.js:
102 * inspector/front-end/ProfilesPanel.js:
103 (WebInspector.ProfileType.prototype.reset):
104 (WebInspector.ProfilesPanel.prototype._reset):
105 (WebInspector.ProfilesPanel.prototype.addProfileHeader):
106 (WebInspector.ProfilesPanel.prototype._removeTemporaryProfile):
107 (WebInspector.ProfilesPanel.prototype.setRecordingProfile):
108 (WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):
109 (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
110 (WebInspector.ProfilerDispatcher.prototype.addProfileHeader):
111 * inspector/front-end/WebKit.qrc:
112 * inspector/front-end/inspector.html:
113 * inspector/front-end/profilesPanel.css:
115 2011-12-29 Sheriff Bot <webkit.review.bot@gmail.com>
117 Unreviewed, rolling out r103798.
118 http://trac.webkit.org/changeset/103798
119 https://bugs.webkit.org/show_bug.cgi?id=75353
121 some small scrollbar differences are making the tests fail on
122 several platforms (Requested by jchaffraix on #webkit).
124 * rendering/RenderLayer.cpp:
125 (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
127 2011-12-29 Alexander Pavlov <apavlov@chromium.org>
129 Web Inspector: Focus of the DOM tree is not restored when switching to the Elements panel
130 https://bugs.webkit.org/show_bug.cgi?id=75351
132 Reviewed by Yury Semikhatsky.
134 * inspector/front-end/ElementsPanel.js:
135 (WebInspector.ElementsPanel.prototype.wasShown):
137 2011-12-29 Julien Chaffraix <jchaffraix@webkit.org>
139 REGRESSION (r93614): Safari Reader doesn't repaint correctly when scrolling
140 https://bugs.webkit.org/show_bug.cgi?id=67100
142 Reviewed by Dan Bernstein.
144 Tests: fast/layers/scroll-with-transform-composited-layer-expected.html
145 fast/layers/scroll-with-transform-composited-layer.html
146 fast/layers/scroll-with-transform-layer-expected.html
147 fast/layers/scroll-with-transform-layer.html
149 The regression came from a previous optimization that was wrongly kept after r93614.
151 * rendering/RenderLayer.cpp:
152 (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
153 Remove the early return for transformed layer. This change worked as we used
154 to call updateLayerPositions from scrollTo which would call updateLayerPosition on
155 all our descendants. After r93614, this is no longer the case and we explicitely need
156 to call updateLayerPosition on our descendants from updateLayerPositionsAfterScroll.
158 2011-12-29 Alexander Pavlov <apavlov@chromium.org>
160 Web Inspector: Tree views can be collapsed/hidden using the keyboard arrows
161 https://bugs.webkit.org/show_bug.cgi?id=46272
163 Reviewed by Yury Semikhatsky.
165 WebInspector.SidebarSectionTreeElement which is not selectable has also been made non-collapsible
166 and expanded by default.
168 * inspector/front-end/AuditsPanel.js:
169 (WebInspector.AuditsPanel):
170 * inspector/front-end/ProfilesPanel.js:
171 (WebInspector.ProfilesPanel.prototype._registerProfileType):
172 * inspector/front-end/SidebarTreeElement.js:
173 (WebInspector.SidebarSectionTreeElement):
174 (WebInspector.SidebarSectionTreeElement.prototype.selectable.false.collapse):
175 * inspector/front-end/TimelinePanel.js:
176 (WebInspector.TimelinePanel):
178 2011-12-29 Pavel Feldman <pfeldman@google.com>
180 Web Inspector: [chromium] pass dock to side request to the embedder.
181 https://bugs.webkit.org/show_bug.cgi?id=75344
183 Reviewed by Yury Semikhatsky.
185 I'd like to enable dock-to-right for the front-end window. This is a background work
186 to pass control flow from the front-end to the front-end host.
188 * inspector/InspectorFrontendClient.h:
189 * inspector/InspectorFrontendClientLocal.h:
190 (WebCore::InspectorFrontendClientLocal::requestSetDockSide):
191 * inspector/InspectorFrontendHost.cpp:
192 (WebCore::InspectorFrontendHost::requestSetDockSide):
193 * inspector/InspectorFrontendHost.h:
194 * inspector/InspectorFrontendHost.idl:
195 * inspector/front-end/InspectorFrontendHostStub.js:
196 (.WebInspector.InspectorFrontendHostStub.prototype.requestAttachWindow):
197 (.WebInspector.InspectorFrontendHostStub.prototype.requestDetachWindow):
198 (.WebInspector.InspectorFrontendHostStub.prototype.requestSetDockSide):
200 2011-12-28 Pavel Podivilov <podivilov@chromium.org>
202 Web Inspector: add "enable source maps" checkbox setting.
203 https://bugs.webkit.org/show_bug.cgi?id=75311
205 Reviewed by Pavel Feldman.
207 When "enable source maps" is on, all auto detected source maps are silently applied.
209 * English.lproj/localizedStrings.js:
210 * inspector/front-end/DebuggerPresentationModel.js:
211 * inspector/front-end/JavaScriptSourceFrame.js:
212 (WebInspector.JavaScriptSourceFrame.prototype.populateTextAreaContextMenu):
213 * inspector/front-end/RawSourceCode.js:
214 (WebInspector.RawSourceCode):
215 (WebInspector.RawSourceCode.prototype.setFormatted):
216 (WebInspector.RawSourceCode.prototype._updateSourceMapping.didCreateSourceMapping):
217 (WebInspector.RawSourceCode.prototype._updateSourceMapping):
218 (WebInspector.RawSourceCode.prototype._createUISourceCode):
219 * inspector/front-end/Settings.js:
220 (WebInspector.Settings):
221 * inspector/front-end/SettingsScreen.js:
222 (WebInspector.SettingsScreen):
223 * inspector/front-end/UISourceCode.js:
224 (WebInspector.UISourceCode):
225 * inspector/front-end/inspector.js:
226 (WebInspector._toolbarItemClicked):
228 2011-12-29 Julien Chaffraix <jchaffraix@webkit.org>
230 Tighten our checks for needsSectionRecalc in RenderTable
231 https://bugs.webkit.org/show_bug.cgi?id=73972
233 Reviewed by Adam Barth.
235 Refactoring covered under the new tests.
237 Now most of the functions use the header, first body and footer's
238 getters that checks if we need a section recalculation. The only
239 exceptions are addChild and recalcSections as they can be called
242 * rendering/RenderTable.cpp:
243 (WebCore::RenderTable::layout):
244 (WebCore::RenderTable::outerBorderAfter):
245 (WebCore::RenderTable::sectionAbove):
246 (WebCore::RenderTable::sectionBelow):
247 Updated the previous functions to use the sections' getters.
249 (WebCore::RenderTable::RenderTable):
250 (WebCore::RenderTable::addChild):
251 (WebCore::RenderTable::recalcSections):
252 Update the previous functions after the 2 renames
255 * rendering/RenderTable.h:
256 (WebCore::RenderTable::header):
257 (WebCore::RenderTable::footer):
258 (WebCore::RenderTable::firstBody):
259 Added some ASSERT here. Also renamed m_head to m_header
260 and m_foot to m_footer to match the getter and to avoid
261 unneeded abbreviation.
263 (WebCore::RenderTable::hasSections):
264 (WebCore::RenderTable::topSection):
265 Updated the previous functions to use the section getters.
267 2011-12-28 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
269 Use HashMap<OwnPtr> for UserScriptMap and UserStyleSheetMap
270 https://bugs.webkit.org/show_bug.cgi?id=75323
272 Reviewed by Darin Adler.
275 (WebCore::Document::pageGroupUserSheets):
276 * page/PageGroup.cpp:
277 (WebCore::PageGroup::addUserScriptToWorld):
278 (WebCore::PageGroup::addUserStyleSheetToWorld):
279 (WebCore::PageGroup::removeUserScriptFromWorld):
280 (WebCore::PageGroup::removeUserStyleSheetFromWorld): fix a small mistake in
281 previous code. Now the entry for world is removed (and deleted) only if its
282 stylesheet vector is empty.
283 (WebCore::PageGroup::removeUserScriptsFromWorld):
284 (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
285 (WebCore::PageGroup::removeAllUserContent):
286 * page/UserScriptTypes.h:
287 * page/UserStyleSheetTypes.h:
289 2011-12-28 Andreas Kling <awesomekling@apple.com>
291 Reduce memory used by NamedNodeMap.
292 <http://webkit.org/b/75333>
294 Reviewed by Sam Weinig.
296 Give NamedNodeMap's attribute vector an inline capacity of 4. The vast majority
297 of elements have <= 4 attributes, and if they don't have any we normally don't
298 allocate an attribute map at all.
300 This reduces memory consumption by 1.2MB (on 64-bit) when loading the full HTML5
301 spec at <http://whatwg.org/c>.
303 * dom/NamedNodeMap.h:
305 2011-12-28 Andreas Kling <awesomekling@apple.com>
307 Reduce memory used by SpaceSplitString.
308 <http://webkit.org/b/75315>
310 Reviewed by Sam Weinig.
312 Split the string upon creation instead of waiting until it's accessed.
313 This allows us to get rid of all data members except the substring vector.
314 Since we're storing AtomicStrings, this is way more memory-efficient than
315 the previous implementation in the majority of cases.
317 Also reduced the inline capcity of the vector to 2 (from 8), after testing
318 showed this to cover 90% of the cases on the Alexa top sites.
320 All in all this reduces memory consumption by 1.1MB (on 64-bit) when
321 loading the full HTML5 spec at <http://whatwg.org/c>. On that same page,
322 less than 2ms is spent (on my MBP) splitting the ~20000 strings.
324 * dom/SpaceSplitString.cpp:
325 (WebCore::SpaceSplitStringData::createVector):
326 (WebCore::SpaceSplitStringData::containsAll):
327 (WebCore::SpaceSplitStringData::remove):
328 * dom/SpaceSplitString.h:
329 (WebCore::SpaceSplitStringData::SpaceSplitStringData):
330 (WebCore::SpaceSplitStringData::contains):
331 (WebCore::SpaceSplitStringData::size):
332 (WebCore::SpaceSplitStringData::operator[]):
334 2011-12-28 ChangSeok Oh <shivamidow@gmail.com>
336 [GTK] Fix compilation issue when selecting opengl for Accelerated compositing
337 https://bugs.webkit.org/show_bug.cgi?id=75309
339 Reviewed by Martin Robinson.
341 Add TextureMapperGL and TextureMapperGLCairo files.
342 They define new classes required to implement TextureMapperGL for GTK port.
344 No new tests required.
346 * GNUmakefile.list.am:
347 * platform/graphics/cairo/TextureMapperGLCairo.cpp: Added.
348 (WebCore::BGRA32PremultimpliedBufferCairo::BGRA32PremultimpliedBufferCairo):
349 (WebCore::BGRA32PremultimpliedBufferCairo::~BGRA32PremultimpliedBufferCairo):
350 (WebCore::BGRA32PremultimpliedBufferCairo::beginPaint):
351 (WebCore::BGRA32PremultimpliedBufferCairo::data):
352 (WebCore::BGRA32PremultimpliedBufferCairo::endPaint):
353 (WebCore::uidForImage):
354 (WebCore::BGRA32PremultimpliedBuffer::create):
355 * platform/graphics/cairo/TextureMapperGLCairo.h: Added.
357 2011-12-28 Sheriff Bot <webkit.review.bot@gmail.com>
359 Unreviewed, rolling out r103782.
360 http://trac.webkit.org/changeset/103782
361 https://bugs.webkit.org/show_bug.cgi?id=75328
363 broke origin-whitelisting-removal.html (Requested by kling on
366 * page/SecurityPolicy.cpp:
367 (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
368 (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
369 (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
371 2011-12-28 Kentaro Hara <haraken@chromium.org>
373 Enable the [Supplemental] IDL on Qt
374 https://bugs.webkit.org/show_bug.cgi?id=75274
376 Reviewed by Adam Barth.
378 This patch enables the [Supplemental] IDL on Qt by changing the build
379 flow of Qt as follows.
381 - Previous build flow:
382 foreach $idl (all IDL files) {
383 generate-bindings.pl depends on $idl;
384 generate-bindings.pl reads $idl;
385 generate-bindings.pl generates .h and .cpp files for $idl;
388 - New build flow (See the discussions in bug 72138 for more details):
389 resolve-supplemental.pl depends on all IDL files;
390 resolve-supplemental.pl reads all IDL files;
391 resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
392 resolve-supplemental.pl outputs supplemental_dependency.tmp;
393 foreach $idl (all IDL files) {
394 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
395 generate-bindings.pl reads $idl;
396 generate-bindings.pl reads supplemental_dependency.tmp;
397 generate-bindings.pl generates .h and .cpp files for $idl,
398 including all attributes in the IDL files that are implementing $idl;
401 Tests: Confirm that build succeeds.
402 http/tests/websocket/tests/*
404 * DerivedSources.pri: Described the above build flow.
406 2011-12-28 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
408 Use HashMap<OwnPtr> in OriginAccessMap
409 https://bugs.webkit.org/show_bug.cgi?id=75327
411 Reviewed by Andreas Kling.
413 * page/SecurityPolicy.cpp:
414 (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
415 (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
416 (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
418 2011-12-28 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
420 Use HashMap<OwnPtr> for ProgressTracker's items
421 https://bugs.webkit.org/show_bug.cgi?id=75326
423 Reviewed by Andreas Kling.
425 * loader/ProgressTracker.cpp:
426 (WebCore::ProgressTracker::~ProgressTracker): although is empty, the destructor was
427 kept so in the header file we can forward declare ProgressItem and use in an OwnPtr.
428 (WebCore::ProgressTracker::reset):
429 (WebCore::ProgressTracker::incrementProgress):
430 (WebCore::ProgressTracker::completeProgress): removed a useless assignment to item
431 member just before it is deleted.
432 * loader/ProgressTracker.h:
434 2011-12-28 Alexis Menard <alexis.menard@openbossa.org>
436 getComputedStyle for border-color is not implemented.
437 https://bugs.webkit.org/show_bug.cgi?id=75324
439 Reviewed by Andreas Kling.
441 Implement getComputedStyle for border-color.
443 Test: fast/css/getComputedStyle/getComputedStyle-border-color-shorthand.html
445 * css/CSSComputedStyleDeclaration.cpp:
446 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
448 2011-12-28 Darin Adler <darin@apple.com>
450 Use OwnPtr to handle lifetime and deletion of FontFace objects
451 https://bugs.webkit.org/show_bug.cgi?id=75221
453 Reviewed by Daniel Bates.
455 * css/CSSFontFaceSource.cpp:
456 (WebCore::CSSFontFaceSource::getFontData): Use add instead of get/set to read and
457 then later fill a cache. Use new version of registerCustomFont that takes PassOwnPtr.
458 * css/CSSSegmentedFontFace.cpp:
459 (WebCore::CSSSegmentedFontFace::getFontData): Ditto.
462 (WebCore::Document::registerCustomFont): Take a PassOwnPtr instead of raw pointer.
463 * dom/Document.h: Ditto.
465 2011-12-28 Adam Barth <abarth@webkit.org>
467 "Fake" insertion mode in HTMLTreeBuilder doesn't do anything
468 https://bugs.webkit.org/show_bug.cgi?id=75322
470 Reviewed by Darin Adler.
472 This machinery isn't needed anymore now that we're using the new
473 foreign content hotness.
475 * html/parser/HTMLTreeBuilder.cpp:
476 * html/parser/HTMLTreeBuilder.h:
477 (WebCore::HTMLTreeBuilder::setInsertionMode):
479 2011-12-28 Alexis Menard <alexis.menard@openbossa.org>
481 getComputedStyle for border-style is not implemented.
482 https://bugs.webkit.org/show_bug.cgi?id=75312
484 Reviewed by Andreas Kling.
486 Implement getComputedStyle for border-style.
488 Test: fast/css/getComputedStyle/getComputedStyle-border-style-shorthand.html
490 * css/CSSComputedStyleDeclaration.cpp:
491 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
493 2011-12-28 Alexis Menard <alexis.menard@openbossa.org>
495 getComputedStyle for border-bottom, border-top, border-left, border-right is not implemented.
496 https://bugs.webkit.org/show_bug.cgi?id=74743
498 Reviewed by Tony Chang.
500 Implement getComputedStyle for border-top, border-bottom, border-right, border-left.
502 Test: fast/css/getComputedStyle/getComputedStyle-border-shorthand.html
504 * css/CSSComputedStyleDeclaration.cpp:
505 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
506 (WebCore::CSSComputedStyleDeclaration::getCSSPropertyValuesForShorthandProperties):
507 * css/CSSComputedStyleDeclaration.h:
509 2011-12-28 Robert Hogan <robert@webkit.org>
511 Inline flow not learning height of all text descendants
512 https://bugs.webkit.org/show_bug.cgi?id=75305
514 Reviewed by Dan Bernstein.
516 Tests: fast/inline/nested-text-descendants-expected.html
517 fast/inline/nested-text-descendants.html
519 The root inline box would only learn it had text descendants if its first grandchild
520 was text. It wasn't informed of subsequent text grandchildren so could not factor them
521 into its calculation of the line height.
522 To fix this, propagate the existence of a text descendant to the root inline box
523 by walking up through the text child's ancestors.
525 * rendering/InlineFlowBox.cpp:
526 (WebCore::setHasTextDescendantsOnAncestors):
527 (WebCore::InlineFlowBox::addToLine):
528 * rendering/InlineFlowBox.h:
529 (WebCore::InlineFlowBox::setHasTextDescendants):
531 2011-12-28 Sheriff Bot <webkit.review.bot@gmail.com>
533 Unreviewed, rolling out r103620.
534 http://trac.webkit.org/changeset/103620
535 https://bugs.webkit.org/show_bug.cgi?id=75316
537 Causes many crashes (Requested by abarth on #webkit).
539 * loader/FrameLoaderClient.h:
540 * page/DOMWindow.cpp:
541 (WebCore::DOMWindow::postMessageTimerFired):
543 2011-12-28 Alexander Pavlov <apavlov@chromium.org>
545 [V8][Chromium] 'randomString' in document.body.style always returns true
546 https://bugs.webkit.org/show_bug.cgi?id=75313
548 Reviewed by Adam Barth.
550 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
551 (WebCore::V8CSSStyleDeclaration::namedPropertyQuery):
553 2011-12-28 Vsevolod Vlasov <vsevik@chromium.org>
555 Web Inspector: Add domain.png to WebCore.gypi / WebKit.qrc.
556 https://bugs.webkit.org/show_bug.cgi?id=75310
558 Reviewed by Pavel Feldman.
561 * inspector/front-end/WebKit.qrc:
563 2011-12-28 Vsevolod Vlasov <vsevik@chromium.org>
565 Web Inspector: ExperimentsSettings causes warning on chromium when reading localizedStrings.
566 https://bugs.webkit.org/show_bug.cgi?id=75299
568 Reviewed by Pavel Feldman.
570 * inspector/front-end/Settings.js:
571 (WebInspector.ExperimentsSettings):
572 * inspector/front-end/SettingsScreen.js:
573 (WebInspector.SettingsScreen.prototype._createExperimentCheckbox):
575 2011-12-28 Vsevolod Vlasov <vsevik@chromium.org>
577 Web Inspector: Scripts panel: add debug sidebar resizer to TabbedEditorContainer.
578 https://bugs.webkit.org/show_bug.cgi?id=75300
580 Reviewed by Pavel Feldman.
582 * inspector/front-end/ScriptsPanel.js:
583 * inspector/front-end/scriptsPanel.css:
584 (#scripts-debug-sidebar-resizer-widget):
586 2011-12-28 Alexander Pavlov <apavlov@chromium.org>
588 Web Inspector: Introduce a Profiler launcher view similar to that in the Audits panel
589 https://bugs.webkit.org/show_bug.cgi?id=75228
591 Reviewed by Pavel Feldman.
593 * English.lproj/localizedStrings.js:
595 * WebCore.vcproj/WebCore.vcproj:
596 * inspector/front-end/AuditLauncherView.js:
597 (WebInspector.AuditLauncherView):
598 * inspector/front-end/AuditsPanel.js:
599 (WebInspector.AuditsPanel):
600 * inspector/front-end/DetailedHeapshotView.js:
601 (WebInspector.DetailedHeapshotProfileType):
602 (WebInspector.DetailedHeapshotProfileType.prototype.get treeItemTitle):
603 (WebInspector.DetailedHeapshotProfileType.prototype.get description):
604 * inspector/front-end/ProfileLauncherView.js: Added.
605 (WebInspector.ProfileLauncherView):
606 (WebInspector.ProfileLauncherView.prototype.setUpEventListeners):
607 (WebInspector.ProfileLauncherView.prototype.addProfileType):
608 (WebInspector.ProfileLauncherView.prototype._controlButtonClicked):
609 (WebInspector.ProfileLauncherView.prototype._updateControls):
610 (WebInspector.ProfileLauncherView.prototype._profileTypeChanged):
611 (WebInspector.ProfileLauncherView.prototype._onProfileStarted):
612 (WebInspector.ProfileLauncherView.prototype._onProfileFinished):
613 * inspector/front-end/ProfileView.js:
614 (WebInspector.CPUProfileType):
615 (WebInspector.CPUProfileType.prototype.get treeItemTitle):
616 (WebInspector.CPUProfileType.prototype.get description):
617 * inspector/front-end/ProfilesPanel.js:
618 (WebInspector.ProfileType.prototype.get treeItemTitle):
619 (WebInspector.ProfileType.prototype.get description):
620 (WebInspector.ProfilesPanel.prototype.get statusBarItems):
621 (WebInspector.ProfilesPanel.prototype.toggleRecordButton):
622 (WebInspector.ProfilesPanel.prototype._onProfileTypeSelected):
623 (WebInspector.ProfilesPanel.prototype._reset):
624 (WebInspector.ProfilesPanel.prototype._showLauncherView):
625 (WebInspector.ProfilesPanel.prototype._registerProfileType):
626 (WebInspector.ProfilesPanel.prototype._addProfileHeader):
627 (WebInspector.ProfilesPanel.prototype._updateInterface):
628 (WebInspector.ProfileTypeTreeElement):
629 (WebInspector.ProfileTypeTreeElement.prototype.collapse):
630 (WebInspector.ProfilesSidebarTreeElement):
631 (WebInspector.ProfilesSidebarTreeElement.prototype.onattach):
632 (WebInspector.ProfilesSidebarTreeElement.prototype.onselect):
633 (WebInspector.ProfilesSidebarTreeElement.prototype.get selectable):
634 (WebInspector.ProfilesSidebarTreeElement.prototype.refresh):
635 * inspector/front-end/WebKit.qrc:
636 * inspector/front-end/WelcomeView.js: Removed.
637 * inspector/front-end/auditsPanel.css:
638 (.audit-launcher-view .audit-launcher-view-content):
639 (.audit-launcher-view div.button-container):
640 (.panel-enabler-view.audit-launcher-view label):
641 (.panel-enabler-view.audit-launcher-view label.disabled):
642 * inspector/front-end/inspector.html:
643 * inspector/front-end/panelEnablerView.css:
644 (.panel-enabler-view img):
645 (.panel-enabler-view .flexible-space):
646 (.panel-enabler-view button:not(.status-bar-item)):
647 (body.inactive .panel-enabler-view button, .panel-enabler-view button:disabled):
648 (.panel-enabler-view input[type="radio"]):
649 (.panel-enabler-view input[type="radio"]:active:not(:disabled)):
650 (.panel-enabler-view input[type="radio"]:checked):
651 (.panel-enabler-view input[type="radio"]:checked:active):
652 * inspector/front-end/profilesPanel.css:
653 (.profile-launcher-view-tree-item > .icon):
654 (.profile-launcher-view-content):
655 (.profile-launcher-view-content h1):
656 (.panel-enabler-view.profile-launcher-view form):
657 (.panel-enabler-view.profile-launcher-view label):
658 (.profile-launcher-view-content p):
659 (.panel-enabler-view.profile-launcher-view button:not(.status-bar-item)):
660 (.profile-launcher-view-content button.running:not(.status-bar-item)):
661 (body.inactive .profile-launcher-view-content button.running:not(.status-bar-item)):
663 2011-12-28 Sheriff Bot <webkit.review.bot@gmail.com>
665 Unreviewed, rolling out r103763.
666 http://trac.webkit.org/changeset/103763
667 https://bugs.webkit.org/show_bug.cgi?id=75307
669 "Compilation fails on Snow Leopard" (Requested by yurys on
672 * inspector/CodeGeneratorInspector.py:
674 (create_ad_hoc_type_declaration.Helper):
675 (CodeGenerator.generate_type_builder):
676 (get_in_c_type_text):
678 2011-12-28 Peter Rybin <peter.rybin@gmail.com>
680 Web Inspector: CodeGeneratorInspector.py: generate enum types.
681 https://bugs.webkit.org/show_bug.cgi?id=74954
683 Reviewed by Yury Semikhatsky.
685 Internal map of string contants is created. C enums are created for
688 * inspector/CodeGeneratorInspector.py:
689 (EnumConstants.add_constant):
691 (EnumConstants.get_enum_constant_code):
692 (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
693 (TypeBindings.create_type_declaration_.EnumBinding.get_in_c_type_text):
694 (TypeBindings.create_type_declaration_.EnumBinding.get_setter_value_expression_pattern):
695 (TypeBindings.create_type_declaration_.PlainString.reduce_to_raw_type):
696 (TypeBindings.create_type_declaration_.PlainString.get_setter_value_expression_pattern):
697 (get_in_c_type_text):
698 (get_setter_value_expression_pattern):
699 (PlainObjectBinding.get_in_c_type_text):
700 (PlainObjectBinding.get_setter_value_expression_pattern):
701 (RawTypesBinding.get_in_c_type_text):
702 (RawTypesBinding.get_setter_value_expression_pattern):
703 (get_annotated_type_text):
704 (MethodGenerateModes.get_modes):
705 (MethodGenerateModes.StrictParameterMode.get_c_param_type_text):
706 (MethodGenerateModes.StrictParameterMode):
707 (MethodGenerateModes.StrictParameterMode.get_setter_value_expression):
708 (MethodGenerateModes.RawParameterMode.get_c_param_type_text):
709 (MethodGenerateModes.RawParameterMode):
710 (MethodGenerateModes.RawParameterMode.get_setter_value_expression):
711 (MethodGenerateModes.CombinedMode.get_c_param_type_text):
712 (MethodGenerateModes):
713 (MethodGenerateModes.CombinedMode):
714 (MethodGenerateModes.CombinedMode.get_setter_value_expression):
716 2011-12-28 Hans Wennborg <hans@chromium.org>
718 IndexedDB: IDBKeyRange constructor should throw when lower > upper
719 https://bugs.webkit.org/show_bug.cgi?id=74705
721 Reviewed by Tony Chang.
723 Make IDBKeyRange throw an exception when lower > upper,
724 or lower == upper and one or both of the bounds is open.
726 Tested in storage/indexeddb/keyrange.html.
728 * storage/IDBKeyRange.cpp:
729 (WebCore::IDBKeyRange::bound):
731 2011-12-28 Alexander Pavlov <apavlov@chromium.org>
733 Web Inspector: [protocol] empty enum constant should be replaced with identifier
734 https://bugs.webkit.org/show_bug.cgi?id=75273
736 Reviewed by Yury Semikhatsky.
738 * inspector/Inspector.json:
739 * inspector/InspectorCSSAgent.cpp:
740 (WebCore::InspectorCSSAgent::asInspectorStyleSheet):
741 (WebCore::InspectorCSSAgent::detectOrigin):
742 * inspector/InspectorStyleSheet.cpp:
743 (WebCore::InspectorStyleSheet::buildObjectForRule):
744 * inspector/front-end/CSSStyleModel.js:
745 (WebInspector.CSSRule.prototype.get isRegular):
747 2011-12-27 Pavel Feldman <pfeldman@google.com>
749 Web Inspector: complete annotating SDK component.
750 https://bugs.webkit.org/show_bug.cgi?id=75259
752 Reviewed by Yury Semikhatsky.
754 * inspector/front-end/DebuggerPresentationModel.js:
755 (WebInspector.DebuggerPresentationModel.prototype._addScript):
756 * inspector/front-end/NetworkManager.js:
757 (WebInspector.NetworkManager.prototype._cacheDisabledSettingChanged):
758 (WebInspector.NetworkDispatcher.prototype._isNull):
759 (WebInspector.NetworkDispatcher.prototype.webSocketCreated):
760 * inspector/front-end/Resource.js:
761 (WebInspector.Resource.displayName):
762 * inspector/front-end/ResourceTreeModel.js:
763 (WebInspector.ResourceTreeModel.prototype._onResourceUpdated):
764 (WebInspector.ResourceTreeModel.prototype._consoleMessageAdded):
765 (WebInspector.ResourceTreeFrame.prototype.get name):
766 * inspector/front-end/TabbedEditorContainer.js:
768 2011-12-27 Anantanarayanan G Iyengar <ananta@chromium.org>
770 Crash in the WebKit accessibility code while attempting to retrieve the title UI element.
771 https://bugs.webkit.org/show_bug.cgi?id=75279
773 Reviewed by Ryosuke Niwa.
775 Fix a crash in the the WebKit accessibility code which occurs while retrieving
776 the title UI clement. The fix is to NULL check the RenderObject::node return value.
778 No test added as there is no reduction.
780 * accessibility/AccessibilityRenderObject.cpp:
781 (WebCore::AccessibilityRenderObject::titleUIElement):
783 2011-12-27 Dominic Cooney <dominicc@chromium.org>
785 Remove initWebKitAnimationEvent method
786 https://bugs.webkit.org/show_bug.cgi?id=71698
788 Reviewed by Ojan Vafai.
790 Now that WebKitAnimationEvent has a constructor, we don't need
792 method. <https://www.w3.org/Bugs/Public/show_bug.cgi?id=15338> is
793 tracking the change to the CSS Animations spec.
795 * dom/WebKitAnimationEvent.cpp:
796 * dom/WebKitAnimationEvent.h:
797 * dom/WebKitAnimationEvent.idl:
799 2011-12-27 Dominic Cooney <dominicc@chromium.org>
801 Remove initWebKitTransitionEvent method
802 https://bugs.webkit.org/show_bug.cgi?id=71701
804 Reviewed by Ojan Vafai.
806 Now that WebKitTransitionEvent has a constructor, we don't need
808 method. <https://www.w3.org/Bugs/Public/show_bug.cgi?id=15339> is
809 tracking the change to the CSS Transitions spec.
811 * dom/WebKitTransitionEvent.cpp:
812 * dom/WebKitTransitionEvent.h:
813 * dom/WebKitTransitionEvent.idl:
815 2011-12-27 Tony Chang <tony@chromium.org>
817 Move HarfBuzz files into their own directory
818 https://bugs.webkit.org/show_bug.cgi?id=72780
820 Reviewed by Daniel Bates.
822 FontCacheLinux.cpp got moved to platform/graphics/skia/FontCacheSkia.cpp since it wasn't HarfBuzz specific.
824 I used HarfBuzz in filenames since that seems to be how the name is capitalized on the project home page.
826 Fixed some style errors caught by the style checker.
828 * PlatformBlackBerry.cmake:
829 * WebCore.gyp/WebCore.gyp:
831 * platform/graphics/chromium/FontPlatformData.h:
832 * platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/ComplexTextControllerLinux.cpp.
833 * platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.h: Renamed from Source/WebCore/platform/graphics/chromium/ComplexTextControllerLinux.h.
834 * platform/graphics/harfbuzz/FontHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontLinux.cpp.
835 * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontPlatformDataLinux.cpp.
836 * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h: Renamed from Source/WebCore/platform/graphics/chromium/FontPlatformDataLinux.h.
837 * platform/graphics/harfbuzz/HarfBuzzSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/HarfbuzzSkia.cpp.
838 * platform/graphics/harfbuzz/HarfBuzzSkia.h: Renamed from Source/WebCore/platform/graphics/chromium/HarfbuzzSkia.h.
839 * platform/graphics/harfbuzz/SimpleFontDataSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/SimpleFontDataLinux.cpp.
840 * platform/graphics/skia/FontCacheSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontCacheLinux.cpp.
841 * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp:
843 2011-12-27 Huang Dongsung <luxtella@company100.net>
845 [TexMap][QT] The fragment shader in OpenGL ES2 requires the default precision
847 https://bugs.webkit.org/show_bug.cgi?id=75168
849 Reviewed by Noam Rosenthal.
851 No new functionality so no new tests.
853 * platform/graphics/opengl/TextureMapperGL.cpp:
854 (WebCore::TextureMapperGL::initializeShaders):
856 2011-12-27 Ryosuke Niwa <rniwa@webkit.org>
858 [Chromium] uninitialized variable in fakeMouseMoveEventTimerFired
859 https://bugs.webkit.org/show_bug.cgi?id=75263
861 Reviewed by Tony Chang.
863 The failure was caused by PlatformKeyboardEvent::getCurrentModifierState in PlatformKeyboardEventChromium.cpp
864 not initializing arguments on Linux. Fixed the failure by always assigning false to the arguments.
866 But we should really fix this function for Linux. Not recognizing any modifier isn't great.
868 * platform/chromium/PlatformKeyboardEventChromium.cpp:
869 (WebCore::PlatformKeyboardEvent::getCurrentModifierState):
871 2011-12-27 Kentaro Hara <haraken@chromium.org>
873 WIP: Enable the [Supplemental] IDL on Gtk
874 https://bugs.webkit.org/show_bug.cgi?id=74972
876 Reviewed by Adam Barth.
878 This patch enables the [Supplemental] IDL on Gtk by changing the build
879 flow of Gtk as follows.
881 - Previous build flow:
882 foreach $idl (all IDL files) {
883 generate-bindings.pl depends on $idl;
884 generate-bindings.pl reads $idl;
885 generate-bindings.pl generates .h and .cpp files for $idl;
888 - New build flow (See the discussions in bug 72138 for more details):
889 resolve-supplemental.pl depends on all IDL files;
890 resolve-supplemental.pl reads all IDL files;
891 resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
892 resolve-supplemental.pl outputs supplemental_dependency.tmp;
893 foreach $idl (all IDL files) {
894 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
895 generate-bindings.pl reads $idl;
896 generate-bindings.pl reads supplemental_dependency.tmp;
897 generate-bindings.pl generates .h and .cpp files for $idl,
898 including all attributes in the IDL files that are implementing $idl;
901 Tests: Confirm that build succeeds.
902 http/tests/websocket/tests/*
904 * GNUmakefile.am: Described the above build flow.
905 * GNUmakefile.list.am: Added a list of IDL files. Instead, removed a list of JS*.h and JS*.cpp
906 that are generated by the IDL files.
908 2011-12-27 Tony Chang <tony@chromium.org>
910 [chromium] When building with clang, enable -Wglobal-constructors
911 https://bugs.webkit.org/show_bug.cgi?id=74365
913 Reviewed by Adam Barth.
915 * WebCore.gyp/WebCore.gyp:
917 2011-12-27 Tony Chang <tony@chromium.org>
919 [chromium] really enable wpo for WebCore libs and for WTF
920 https://bugs.webkit.org/show_bug.cgi?id=75264
922 Reviewed by Adam Barth.
924 * WebCore.gyp/WebCore.gyp: The variable was getting clobbered by the
925 value set in common.gypi. Use a target_defaults instead to set the
926 variable. I tested manually on my Windows machine and
927 WholeProgramOptimization is getting set when buildtype is Official.
929 2011-12-27 Tony Chang <tony@chromium.org>
931 [chromium] remove references to files no longer in the tree
932 https://bugs.webkit.org/show_bug.cgi?id=75262
934 Reviewed by Adam Barth.
936 * WebCore.gypi: platform/mac/PlatformMouseEventMac.mm and platform/mac/WheelEventMac.mm
937 were removed in r103652.
939 2011-12-27 Vsevolod Vlasov <vsevik@chromium.org>
941 Unreviewed web inspector localizedStrings.js fix.
943 * English.lproj/localizedStrings.js:
945 2011-12-27 Vsevolod Vlasov <vsevik@chromium.org>
947 Web Inspector: Introduce support for experimental settings.
948 https://bugs.webkit.org/show_bug.cgi?id=75250
950 Reviewed by Pavel Feldman.
952 * English.lproj/localizedStrings.js:
953 * inspector/front-end/ScriptsPanel.js:
954 * inspector/front-end/Settings.js:
955 (WebInspector.ExperimentsSettings):
956 (WebInspector.ExperimentsSettings.prototype.get experiments):
957 (WebInspector.ExperimentsSettings.prototype.get experimentsEnabled):
958 (WebInspector.ExperimentsSettings.prototype._createExperiment):
959 (WebInspector.ExperimentsSettings.prototype.set _cleanUpSetting.get var):
960 (WebInspector.ExperimentsSettings.prototype.set _cleanUpSetting):
961 (set WebInspector.Experiment):
962 (WebInspector.Experiment.prototype.get name):
963 (WebInspector.Experiment.prototype.get title):
964 (WebInspector.Experiment.prototype.isEnabled):
965 (WebInspector.Experiment.prototype.setEnabled):
967 * inspector/front-end/SettingsScreen.js:
968 (WebInspector.SettingsScreen):
969 (WebInspector.SettingsScreen.prototype._createExperimentsWarningSubsection):
970 (WebInspector.SettingsScreen.prototype._createExperimentCheckbox.listener):
971 (WebInspector.SettingsScreen.prototype._createExperimentCheckbox):
972 * inspector/front-end/helpScreen.css:
973 (.settings-experiments-warning-subsection-warning):
974 (.settings-experiments-warning-subsection-message):
976 2011-12-27 Alexander Pavlov <apavlov@chromium.org>
978 Web Inspector: exception when scrolling in JavaScriptOutline dialog with empty query
979 https://bugs.webkit.org/show_bug.cgi?id=75255
981 Reviewed by Pavel Feldman.
983 * inspector/front-end/JavaScriptOutlineDialog.js:
984 (WebInspector.JavaScriptOutlineDialog.prototype._onScroll):
986 2011-12-27 Pavel Feldman <pfeldman@google.com>
988 Web Inspector: add more annotations on SDK classes.
989 https://bugs.webkit.org/show_bug.cgi?id=75247
991 Reviewed by Yury Semikhatsky.
993 * inspector/Inspector.json:
994 * inspector/compile-front-end.sh:
995 * inspector/front-end/ApplicationCacheModel.js:
996 (WebInspector.ApplicationCacheDispatcher.prototype.networkStateUpdated):
997 * inspector/front-end/BreakpointManager.js:
998 (WebInspector.BreakpointManager.prototype._breakpoint):
999 * inspector/front-end/Color.js:
1000 (WebInspector.Color.prototype.get shorthex):
1001 (WebInspector.Color.prototype.get hex):
1002 (WebInspector.Color.prototype.get rgb):
1003 (WebInspector.Color.prototype.get hsl):
1004 (WebInspector.Color.prototype.get nickname):
1005 (WebInspector.Color.prototype.hasShortHex):
1006 (WebInspector.Color.prototype._individualRGBValueToFloatValue):
1007 (WebInspector.Color.prototype._rgbStringsToHex):
1008 (WebInspector.Color.prototype._parse.this.nickname.set 2):
1009 (WebInspector.Color.prototype._parse.this.hsla.set 1):
1010 (WebInspector.Color.prototype._parse.this.rgba.set 0):
1011 (WebInspector.Color.prototype._parse.set WebInspector):
1012 (WebInspector.Color.prototype._parse):
1013 * inspector/front-end/CompilerSourceMapping.js:
1014 * inspector/front-end/ConsoleModel.js:
1015 * inspector/front-end/ContentProviders.js:
1016 (WebInspector.ScriptContentProvider):
1017 (WebInspector.ConcatenatedScriptsContentProvider):
1018 (WebInspector.CompilerSourceMappingContentProvider):
1019 (WebInspector.StaticContentProvider):
1020 * inspector/front-end/CookieParser.js:
1021 (WebInspector.CookieParser.KeyValue):
1022 (WebInspector.CookieParser.prototype.parseCookie):
1023 (WebInspector.CookieParser.prototype.parseSetCookie):
1024 (WebInspector.CookieParser.prototype._extractKeyValue):
1025 * inspector/front-end/DOMStorage.js:
1026 * inspector/front-end/Database.js:
1027 (WebInspector.DatabaseDispatcher.prototype.sqlTransactionSucceeded):
1028 (WebInspector.DatabaseDispatcher.prototype.sqlTransactionFailed):
1029 * inspector/front-end/DebuggerModel.js:
1030 (WebInspector.DebuggerModel.Location):
1031 (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
1032 * inspector/front-end/DebuggerPresentationModel.js:
1033 (WebInspector.DebuggerPresentationModelResourceBinding.prototype._setContentWithInitialContent):
1034 * inspector/front-end/ElementsTreeOutline.js:
1035 * inspector/front-end/HAREntry.js:
1036 * inspector/front-end/NetworkLog.js:
1037 (WebInspector.NetworkLog.prototype._mainFrameNavigated):
1038 * inspector/front-end/Placard.js:
1039 * inspector/front-end/RawSourceCode.js:
1040 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
1041 (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.uiLocationToRawLocation):
1042 * inspector/front-end/RemoteObject.js:
1043 (WebInspector.RemoteObject.fromPrimitiveValue):
1044 (WebInspector.RemoteObject.prototype.setPropertyValue.propertySetCallback):
1045 (WebInspector.RemoteObject.prototype.setPropertyValue):
1046 (WebInspector.LocalJSONObject.prototype.get hasChildren):
1047 (WebInspector.LocalJSONObject.prototype._children):
1048 * inspector/front-end/Resource.js:
1049 (WebInspector.Resource.restoreRevisions):
1050 (WebInspector.Resource.prototype.get queryParameters):
1051 (WebInspector.Resource.prototype.get formParameters):
1052 (WebInspector.Resource.prototype.isHttpFamily):
1053 * inspector/front-end/ResourceCategory.js:
1054 * inspector/front-end/ResourceUtils.js:
1055 * inspector/front-end/ScopeChainSidebarPane.js:
1056 (WebInspector.ScopeChainSidebarPane.prototype.update):
1057 * inspector/front-end/Script.js:
1058 (WebInspector.Script.prototype.isInlineScript):
1059 * inspector/front-end/ScriptFormatter.js:
1060 (WebInspector.ScriptFormatter.positionToLocation):
1061 * inspector/front-end/WelcomeView.js:
1062 (WebInspector.WelcomeView.prototype.addMessage):
1063 * inspector/front-end/externs.js:
1064 (Array.prototype.upperBound):
1066 2011-12-27 Vsevolod Vlasov <vsevik@chromium.org>
1068 Web Inspector: Scripts panel tabbed editor does not reopen closed tabs.
1069 https://bugs.webkit.org/show_bug.cgi?id=75245
1071 Reviewed by Pavel Feldman.
1073 * inspector/front-end/NetworkItemView.js:
1074 (WebInspector.NetworkItemView):
1075 * inspector/front-end/TabbedEditorContainer.js:
1076 (WebInspector.TabbedEditorContainer):
1077 (WebInspector.TabbedEditorContainer.prototype._tabClosed):
1078 * inspector/front-end/TabbedPane.js:
1079 (WebInspector.TabbedPane.prototype.closeTab):
1080 (WebInspector.TabbedPane.prototype.selectTab):
1082 2011-12-27 Yury Semikhatsky <yurys@chromium.org>
1084 Web Inspector: report per document JS event listener count
1085 https://bugs.webkit.org/show_bug.cgi?id=74298
1087 This patch adds JS event listener count to the memory agent
1090 Reviewed by Pavel Feldman.
1092 Test: inspector/dom-statistics.html
1094 * inspector/Inspector.json:
1095 * inspector/InspectorMemoryAgent.cpp:
1097 2011-12-27 Alexander Pavlov <apavlov@chromium.org>
1099 Web Inspector: [REGRESSION] Go to Function dialog always has a minimal height
1100 https://bugs.webkit.org/show_bug.cgi?id=75254
1102 Reviewed by Yury Semikhatsky.
1104 * inspector/front-end/scriptsPanel.css:
1107 2011-12-26 Vsevolod Vlasov <vsevik@chromium.org>
1109 Web Inspector: Create tabbed editor for scripts panel.
1110 https://bugs.webkit.org/show_bug.cgi?id=75230
1112 Reviewed by Pavel Feldman.
1115 * WebCore.vcproj/WebCore.vcproj:
1116 * inspector/compile-front-end.sh:
1117 * inspector/front-end/ScriptsNavigator.js:
1118 (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes.get if):
1119 (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes):
1120 (WebInspector.NavigatorScriptTreeElement.prototype.ondblclick):
1121 (WebInspector.NavigatorScriptTreeElement.prototype.onenter):
1122 * inspector/front-end/ScriptsPanel.js:
1123 * inspector/front-end/TabbedEditorContainer.js: Added.
1124 * inspector/front-end/TabbedPane.js:
1125 (WebInspector.TabbedPane.prototype.get visibleView):
1126 (WebInspector.TabbedPane.prototype.get selectedTabId):
1127 (WebInspector.TabbedPane.prototype.closeAllTabs):
1128 (WebInspector.TabbedPane.prototype.changeTabTitle):
1129 (WebInspector.TabbedPane.prototype.changeTabView):
1130 (WebInspector.TabbedPaneTab):
1131 (WebInspector.TabbedPaneTab.prototype.get title):
1132 (WebInspector.TabbedPaneTab.prototype.set title):
1133 (WebInspector.TabbedPaneTab.prototype.get view):
1134 (WebInspector.TabbedPaneTab.prototype.set view):
1135 (WebInspector.TabbedPaneTab.prototype._createTabElement):
1136 * inspector/front-end/WebKit.qrc:
1137 * inspector/front-end/inspector.html:
1138 * inspector/front-end/scriptsPanel.css:
1139 (.scripts-views-container):
1141 (#scripts-editor-container-tabbed-pane .tabbed-pane-header):
1142 (#scripts-editor-container-tabbed-pane .tabbed-pane-header-contents):
1143 (#scripts-editor-container-tabbed-pane .tabbed-pane-content):
1145 2011-12-27 Pavel Feldman <pfeldman@google.com>
1147 Not reviewed: Rolling out r103703 for breaking Canvas2DLayerChromiumTest.testFullLifecycle.
1149 * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1150 (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
1151 (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
1152 (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
1153 (WebCore::Canvas2DLayerChromium::setTextureManager):
1154 (WebCore::Canvas2DLayerChromium::updateCompositorResources):
1155 (WebCore::Canvas2DLayerChromium::pushPropertiesTo):
1156 (WebCore::Canvas2DLayerChromium::unreserveContentsTexture):
1157 (WebCore::Canvas2DLayerChromium::cleanupResources):
1158 * platform/graphics/chromium/Canvas2DLayerChromium.h:
1160 2011-12-22 Vangelis Kokkevis <vangelis@chromium.org>
1162 [chromium] Bypass the shadow texture copy for accelerated
1163 canvas when running the compositor in single threaded mode.
1164 https://bugs.webkit.org/show_bug.cgi?id=75146
1166 The texture copy fails on Windows as glCopyTexImage2D() doesn't
1167 support BGRA source textures.
1168 This change also modified Canvas2DLayerChromium::updateCompositorResources
1169 to call glCopyTexSubImage2D() instead of glCopyTexImage2D() so that
1170 the copy can work with texture allocated via the glTexStorage2D
1173 Reviewed by James Robinson.
1176 * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1177 (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
1178 (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
1179 (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
1180 (WebCore::Canvas2DLayerChromium::setTextureManager):
1181 (WebCore::Canvas2DLayerChromium::updateCompositorResources):
1182 (WebCore::Canvas2DLayerChromium::pushPropertiesTo):
1183 (WebCore::Canvas2DLayerChromium::unreserveContentsTexture):
1184 (WebCore::Canvas2DLayerChromium::cleanupResources):
1185 * platform/graphics/chromium/Canvas2DLayerChromium.h:
1187 2011-12-26 Gyuyoung Kim <gyuyoung.kim@samsung.com>
1189 [EFL][WK2] Implement context menu for EFL port.
1190 https://bugs.webkit.org/show_bug.cgi?id=74995
1192 Reviewed by Anders Carlsson.
1194 Implement missing ContextMenuEfl class in order to support WK2's context menu.
1195 Because WK2's context menu still needs WebCore's context menu implementation.
1196 And of course, this patch also can be used for WK1 without CROSS_PLATFORM_CONTEXT_MENU
1199 * platform/ContextMenu.h:
1200 * platform/ContextMenuItem.h:
1201 * platform/PlatformMenuDescription.h:
1202 * platform/efl/ContextMenuEfl.cpp:
1203 (WebCore::ContextMenu::~ContextMenu):
1204 (WebCore::ContextMenu::appendItem):
1205 (WebCore::ContextMenu::insertItem):
1206 (WebCore::ContextMenu::itemCount):
1207 (WebCore::ContextMenu::setPlatformDescription):
1208 (WebCore::ContextMenu::platformDescription):
1209 (WebCore::ContextMenu::releasePlatformDescription):
1210 (WebCore::platformMenuDescription):
1211 (WebCore::contextMenuItemVector):
1212 * platform/efl/ContextMenuItemEfl.cpp:
1213 (WebCore::ContextMenuItem::ContextMenuItem):
1214 (WebCore::ContextMenuItem::~ContextMenuItem):
1215 (WebCore::ContextMenuItem::setType):
1216 (WebCore::ContextMenuItem::type):
1217 (WebCore::ContextMenuItem::setAction):
1218 (WebCore::ContextMenuItem::action):
1219 (WebCore::ContextMenuItem::setTitle):
1220 (WebCore::ContextMenuItem::title):
1221 (WebCore::ContextMenuItem::setChecked):
1222 (WebCore::ContextMenuItem::checked):
1223 (WebCore::ContextMenuItem::setEnabled):
1224 (WebCore::ContextMenuItem::enabled):
1226 2011-12-26 Hajime Morrita <morrita@chromium.org>
1228 [Refactoring] Node::setTreeScopeRecursively() doesn't need includeRoot parameter
1229 https://bugs.webkit.org/show_bug.cgi?id=75240
1231 Reviewed by Anders Carlsson.
1233 No new tests. No behavior change.
1236 (WebCore::Node::setTreeScopeRecursively):
1239 2011-12-26 Darin Adler <darin@apple.com>
1241 Use OwnPtr and OwnArrayPtr in a couple more places
1242 https://bugs.webkit.org/show_bug.cgi?id=75211
1244 Reviewed by Andreas Kling.
1246 I had a patch with some changes from a while back from going through all sorts of
1247 classes and changing code to use adoptPtr. Most were landed long ago, these are the
1248 ones that still apply.
1250 There are six pieces here that could each be landed separately.
1251 The big one is CSSParser.
1253 * css/CSSGrammar.y: Update for members and functions that now
1254 return PassOwnPtr instead of raw pointers.
1255 * css/CSSParser.cpp:
1256 (WebCore::CSSParser::CSSParser): Remove explicit construction
1257 for m_valueList and m_data since OwnPtr and OwnArrayPtr initialize
1259 (WebCore::CSSParser::~CSSParser): Removed delete m_valueList and
1260 fastFree(m_data) since OwnPtr and OwnArrayPtr handle that.
1261 (WebCore::CSSParser::setupParser): Use adoptArrayPtr and new for
1262 the character array instead of fastFree/fastMalloc. Added get
1263 function calls as needed.
1264 (WebCore::CSSParser::parseValue): Added get function calls as needed.
1265 (WebCore::CSSParser::parseContent): Ditto.
1266 (WebCore::CSSParser::parseFillProperty): Ditto.
1267 (WebCore::CSSParser::parseTransformOriginShorthand): Ditto.
1268 (WebCore::CSSParser::parseBorderImage): Ditto.
1269 (WebCore::CSSParser::parseTransformOrigin): Ditto.
1270 (WebCore::CSSParser::parsePerspectiveOrigin): Ditto.
1271 (WebCore::CSSParser::sinkFloatingValueList): Changed to return PassOwnPtr.
1272 The adoptPtr call is here.
1273 (WebCore::CSSParser::sinkFloatingFunction): Ditto.
1274 (WebCore::CSSParser::markSelectorListStart): Added get function calls as needed.
1275 (WebCore::CSSParser::markSelectorListEnd): Ditto.
1276 (WebCore::CSSParser::markRuleBodyStart): Ditto.
1277 (WebCore::CSSParser::markRuleBodyEnd): Ditto.
1278 (WebCore::CSSParser::markPropertyStart): Ditto.
1279 (WebCore::CSSParser::markPropertyEnd): Ditto.
1280 * css/CSSParser.h: Moved conditional includes to their own paragraph.
1281 Made sinkFloatingValueList and sinkFloatingFunction return PassOwnPtr.
1282 Made m_valueList an OwnPtr and m_data an OwnArrayPtr.
1283 * css/SVGCSSParser.cpp:
1284 (WebCore::CSSParser::parseSVGValue): Added a call to the get function.
1286 * html/PluginDocument.h: Made isPluginDocument private. Also marked all the
1287 functions that are overriding here as OVERRIDE since I was touching the header.
1289 * html/parser/HTMLToken.h:
1290 (WebCore::HTMLTokenTypes::DoctypeData::DoctypeData): Removed an unneeded line
1291 explicitly initializing the base class.
1293 * page/animation/AnimationBase.cpp:
1294 (WebCore::RefCountedPropertyWrapper::RefCountedPropertyWrapper): Fixed indent.
1296 * rendering/style/RenderStyle.h: Moved conditional includes to their own paragraph.
1298 * xml/parser/MarkupTokenBase.h:
1299 (WebCore::MarkupTokenBase::beginDOCTYPE): Removed unneeded parentheses.
1301 2011-12-26 Vsevolod Vlasov <vsevik@chromium.org>
1303 Web Inspector: Extract FileEditor from ScriptsPanel.
1304 https://bugs.webkit.org/show_bug.cgi?id=75229
1306 Reviewed by Pavel Feldman.
1308 * inspector/front-end/JavaScriptSourceFrame.js:
1309 (WebInspector.JavaScriptSourceFrame.prototype.suggestedFileName):
1310 * inspector/front-end/ScriptsNavigator.js:
1311 * inspector/front-end/ScriptsPanel.js:
1312 (WebInspector.ScriptsPanel.prototype._reset):
1313 (WebInspector.ScriptsPanel.prototype.get visibleView):
1314 (WebInspector.ScriptsPanel.prototype._updateScriptViewStatusBarItems):
1315 (WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced.get if):
1316 (WebInspector.ScriptsPanel.EditorContainer):
1317 (WebInspector.ScriptsPanel.EditorContainer.prototype.get currentSourceFrame):
1318 (WebInspector.ScriptsPanel.EditorContainer.prototype.show):
1319 (WebInspector.ScriptsPanel.EditorContainer.prototype.showSourceFrame):
1320 (WebInspector.ScriptsPanel.EditorContainer.prototype.isSourceFrameOpen):
1321 (WebInspector.ScriptsPanel.EditorContainer.prototype.replaceSourceFrames):
1322 (WebInspector.ScriptsPanel.EditorContainer.prototype.setSourceFrameIsDirty):
1323 (WebInspector.ScriptsPanel.EditorContainer.prototype.reset):
1324 (WebInspector.ScriptsPanel.SingleFileEditorContainer):
1325 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.get currentSourceFrame):
1326 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.show):
1327 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.showSourceFrame):
1328 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.isSourceFrameOpen):
1329 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.replaceSourceFrames):
1330 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.setSourceFrameIsDirty):
1331 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.reset):
1332 * inspector/front-end/UISourceCode.js:
1333 (WebInspector.UISourceCode.prototype.get domain):
1334 (WebInspector.UISourceCode.prototype.get folderName):
1335 (WebInspector.UISourceCode.prototype.get fileName):
1336 (WebInspector.UISourceCode.prototype.get displayName):
1337 (WebInspector.UISourceCode.prototype._parseURL):
1339 2011-12-26 Darin Adler <darin@apple.com>
1341 Fix mutation observer build after didMoveToNewDocument change
1342 https://bugs.webkit.org/show_bug.cgi?id=75224
1344 Reviewed by Hajime Morita.
1347 (WebCore::willCallDidMoveToNewDocument): Added.
1348 (WebCore::didMoveToNewDocumentWasCalled): Added.
1349 (WebCore::Node::setDocument): Call new debugging function.
1350 (WebCore::Node::didMoveToNewDocument): Ditto. Also use ASSERT_UNUSED
1351 unconditionally rather than UNUSED_PARAM inside and #if. Also added
1352 a new assertion that checks that hte old document was passed through
1355 2011-12-26 Alexander Pavlov <apavlov@chromium.org>
1357 Web Inspector: [Scripts] Implement iterative match highlighting in the "Go to Function" dialog item list
1358 https://bugs.webkit.org/show_bug.cgi?id=75226
1360 Reviewed by Pavel Feldman.
1362 * inspector/front-end/JavaScriptOutlineDialog.js:
1363 (WebInspector.JavaScriptOutlineDialog):
1364 (WebInspector.JavaScriptOutlineDialog.prototype._createSearchRegExp):
1365 (WebInspector.JavaScriptOutlineDialog.prototype._filterFunctions):
1366 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.previousItem):
1367 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.nextItem):
1368 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown):
1369 (WebInspector.JavaScriptOutlineDialog.prototype._updateSelection):
1370 (WebInspector.JavaScriptOutlineDialog.prototype._onScroll):
1371 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter):
1372 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype.highlightViewportItems):
1373 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype.clearHighlight):
1374 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype._highlightItem):
1375 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype._viewportRowRange):
1376 * inspector/front-end/javaScriptOutlineDialog.css:
1377 (.js-outline-dialog > .container > div.item > span.highlight):
1379 2011-12-26 Vsevolod Vlasov <vsevik@chromium.org>
1381 Web Inspector: Extract FileSelector from ScriptsPanel.
1382 https://bugs.webkit.org/show_bug.cgi?id=75173
1384 Reviewed by Pavel Feldman.
1386 * inspector/front-end/ScriptsNavigator.js:
1387 (WebInspector.ScriptsNavigator):
1388 (WebInspector.ScriptsNavigator.prototype.get defaultFocusedElement):
1389 (WebInspector.ScriptsNavigator.prototype.show):
1390 (WebInspector.ScriptsNavigator.prototype.setScriptSourceIsDirty):
1391 (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes):
1392 (WebInspector.ScriptsNavigator.prototype.scriptSelected):
1393 * inspector/front-end/ScriptsPanel.js:
1394 (WebInspector.ScriptsPanel.prototype.get defaultFocusedElement):
1395 (WebInspector.ScriptsPanel.prototype._uiSourceCodeAdded.get if):
1396 (WebInspector.ScriptsPanel.prototype.setScriptSourceIsBeingEdited):
1397 (WebInspector.ScriptsPanel.prototype._reset):
1398 (WebInspector.ScriptsPanel.prototype._showSourceLine):
1399 (WebInspector.ScriptsPanel.prototype._showAndRevealInFileSelector):
1400 (WebInspector.ScriptsPanel.prototype._createSourceFrame):
1401 (WebInspector.ScriptsPanel.prototype._updateExecutionLine):
1402 (WebInspector.ScriptsPanel.prototype._scriptSelected):
1403 (WebInspector.ScriptsPanel.FileSelector):
1404 (WebInspector.ScriptsPanel.FileSelector.prototype.get defaultFocusedElement):
1405 (WebInspector.ScriptsPanel.FileSelector.prototype.show):
1406 (WebInspector.ScriptsPanel.FileSelector.prototype.addUISourceCode):
1407 (WebInspector.ScriptsPanel.FileSelector.prototype.isScriptSourceAdded):
1408 (WebInspector.ScriptsPanel.FileSelector.prototype.revealUISourceCode):
1409 (WebInspector.ScriptsPanel.FileSelector.prototype.setScriptSourceIsDirty):
1410 (WebInspector.ScriptsPanel.FileSelector.prototype.replaceUISourceCodes):
1411 (WebInspector.ScriptsPanel.ComboBoxFileSelector):
1412 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.get defaultFocusedElement):
1413 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.show):
1414 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.showDebugSidebarResizeWidget):
1415 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.addUISourceCode):
1416 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.isScriptSourceAdded):
1417 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.revealUISourceCode):
1418 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._innerRevealUISourceCode):
1419 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addToHistory):
1420 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.replaceUISourceCodes):
1421 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._showScriptFoldersSettingChanged):
1422 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._reset):
1423 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.setScriptSourceIsDirty):
1424 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._createEditorToolbar):
1425 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.get var):
1426 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.insertOrdered.optionCompare):
1427 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.insertOrdered):
1428 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect):
1429 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._resetFilesSelect):
1430 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._updateBackAndForwardButtons):
1431 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goBack):
1432 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goForward):
1433 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._filesSelectChanged):
1434 * inspector/front-end/inspector.html:
1435 * inspector/front-end/utilities.js:
1438 2011-12-26 Alexander Pavlov <apavlov@chromium.org>
1440 Web Inspector: Implement "Go to Function" dialog for JavaScript
1441 https://bugs.webkit.org/show_bug.cgi?id=75092
1443 Reviewed by Pavel Feldman.
1445 * English.lproj/localizedStrings.js:
1447 * WebCore.vcproj/WebCore.vcproj:
1448 * inspector/compile-front-end.sh:
1449 * inspector/front-end/JavaScriptOutlineDialog.js: Added.
1450 (WebInspector.JavaScriptOutlineDialog.onMouseDown):
1451 (WebInspector.JavaScriptOutlineDialog):
1452 (WebInspector.JavaScriptOutlineDialog.didAddChunk):
1453 (WebInspector.JavaScriptOutlineDialog.install):
1454 (WebInspector.JavaScriptOutlineDialog._show):
1455 (WebInspector.JavaScriptOutlineDialog.createShortcut):
1456 (WebInspector.JavaScriptOutlineDialog.prototype._resizeWindow):
1457 (WebInspector.JavaScriptOutlineDialog.prototype._appendItemElements):
1458 (WebInspector.JavaScriptOutlineDialog.prototype._createSearchRegExp):
1459 (WebInspector.JavaScriptOutlineDialog.prototype._filterFunctions):
1460 (WebInspector.JavaScriptOutlineDialog.prototype._selectFirstItem):
1461 (WebInspector.JavaScriptOutlineDialog.prototype._hide):
1462 (WebInspector.JavaScriptOutlineDialog.prototype._onBlur):
1463 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.previousItem):
1464 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.nextItem):
1465 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown):
1466 (WebInspector.JavaScriptOutlineDialog.prototype._scheduleFilter):
1467 (WebInspector.JavaScriptOutlineDialog.prototype._updateSelection):
1468 (WebInspector.JavaScriptOutlineDialog.prototype._onClick):
1469 (WebInspector.JavaScriptOutlineDialog.prototype._onMouseMove):
1470 (WebInspector.JavaScriptOutlineDialog.prototype._highlightFunctionLine):
1471 * inspector/front-end/JavaScriptSourceFrame.js:
1472 (WebInspector.JavaScriptSourceFrame.prototype.get uiSourceCode):
1473 * inspector/front-end/ScriptsPanel.js:
1474 (WebInspector.ScriptsPanel.prototype._didBuildOutlineChunk):
1475 (WebInspector.ScriptsPanel.prototype._reset):
1476 (WebInspector.ScriptsPanel.prototype.requestVisibleScriptOutline):
1477 (WebInspector.ScriptsPanel.prototype._createEditorToolbar):
1478 * inspector/front-end/WebKit.qrc:
1479 * inspector/front-end/inspector.html:
1480 * inspector/front-end/javaScriptOutlineDialog.css: Added.
1481 (.js-outline-dialog):
1482 (.js-outline-dialog > input):
1483 (.js-outline-dialog > div.progress):
1484 (.js-outline-dialog > div.container):
1485 (.js-outline-dialog > .container > div.item):
1486 (.js-outline-dialog > .container > div.item.selected):
1488 2011-12-26 Pavel Feldman <pfeldman@google.com>
1490 Web Inspector: make SDK compilation component self-contained.
1491 https://bugs.webkit.org/show_bug.cgi?id=75172
1493 Reviewed by Yury Semikhatsky.
1495 * inspector/compile-front-end.sh:
1496 * inspector/front-end/ConsoleMessage.js:
1497 (WebInspector.ConsoleMessageImpl):
1498 (WebInspector.ConsoleMessageImpl.prototype.get stackTrace):
1499 (WebInspector.ConsoleMessageImpl.prototype.clone):
1500 * inspector/front-end/ConsoleModel.js:
1501 (WebInspector.ConsoleModel.prototype._messageRepeatCountUpdated):
1502 (WebInspector.ConsoleMessage):
1503 (WebInspector.ConsoleMessage.prototype.isErrorOrWarning):
1504 (WebInspector.ConsoleMessage.prototype.updateRepeatCount):
1505 (WebInspector.ConsoleMessage.prototype.clone):
1506 * inspector/front-end/DebuggerPresentationModel.js:
1507 (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
1508 * inspector/front-end/ResourceUtils.js:
1509 * inspector/front-end/UIUtils.js:
1510 (WebInspector.resetToolbarColors):
1511 (WebInspector.populateHrefContextMenu):
1513 2011-12-26 Hajime Morrita <morrita@google.com>
1515 Unreviewed bad merge fix.
1517 * svg/SVGSVGElement.cpp:
1518 (WebCore::SVGSVGElement::didMoveToNewDocument):
1520 2011-12-25 Hajime Morrita <morrita@chromium.org>
1522 https://bugs.webkit.org/show_bug.cgi?id=74067
1523 Refactoring: Unitfy willMoveToNewDocument() and didMoveToNewDocument()
1525 Reviewed by Darin Adler.
1527 No new tests. No behavior change.
1529 This change combines two method Node::willMoveToNewOwnerDocument() and Node::didMoveToNewOwnerDocument()
1530 into Node::didMoveToNewDocument(Document* oldDocument).
1532 The intention of this change is:
1533 - Making upcoming refactoring (Bug 59816) possible. The refactoring will turn Node::m_document into
1534 Node::m_treeScope, and we will no longer have Node::setDocument() where we can invoke both
1535 willMoveToNewDocument() and didMoveToNewDocument() at once.
1536 - Killing one extra virtual method call.
1537 - Making the concept of "move" clearer by keeping such an operation into the single method.
1540 (WebCore::setWillMoveToNewDocumentWasCalled):
1541 (WebCore::setDidMoveToNewDocumentWasCalled):
1542 (WebCore::Node::setDocument):
1543 (WebCore::Node::didMoveToNewDocument):
1545 * dom/StyledElement.cpp:
1546 (WebCore::StyledElement::attributeChanged):
1547 * html/FormAssociatedElement.cpp:
1548 (WebCore::FormAssociatedElement::didMoveToNewDocument):
1549 * html/FormAssociatedElement.h:
1550 * html/HTMLFormControlElement.cpp:
1551 (WebCore::HTMLFormControlElement::didMoveToNewDocument):
1552 (WebCore::HTMLFormControlElementWithState::didMoveToNewDocument):
1553 * html/HTMLFormControlElement.h:
1554 * html/HTMLFormElement.cpp:
1555 (WebCore::HTMLFormElement::didMoveToNewDocument):
1556 * html/HTMLFormElement.h:
1557 * html/HTMLImageElement.cpp:
1558 (WebCore::HTMLImageElement::didMoveToNewDocument):
1559 * html/HTMLImageElement.h:
1560 * html/HTMLInputElement.cpp:
1561 (WebCore::HTMLInputElement::didMoveToNewDocument):
1562 * html/HTMLInputElement.h:
1563 * html/HTMLMediaElement.cpp:
1564 (WebCore::HTMLMediaElement::didMoveToNewDocument):
1565 * html/HTMLMediaElement.h:
1566 * html/HTMLObjectElement.cpp:
1567 (WebCore::HTMLObjectElement::didMoveToNewDocument):
1568 * html/HTMLObjectElement.h:
1569 * html/HTMLPlugInImageElement.cpp:
1570 (WebCore::HTMLPlugInImageElement::didMoveToNewDocument):
1571 * html/HTMLPlugInImageElement.h:
1572 * html/HTMLVideoElement.cpp:
1573 (WebCore::HTMLVideoElement::didMoveToNewDocument):
1574 * html/HTMLVideoElement.h:
1575 * html/ImageDocument.cpp:
1576 (WebCore::ImageDocumentElement::didMoveToNewDocument):
1577 * html/ImageInputType.cpp:
1578 (WebCore::ImageInputType::willMoveToNewDocument):
1579 * loader/ImageLoader.cpp:
1580 (WebCore::ImageLoader::elementDidMoveToNewDocument):
1581 * loader/ImageLoader.h:
1582 * svg/SVGImageElement.cpp:
1583 (WebCore::SVGImageElement::didMoveToNewDocument):
1584 * svg/SVGImageElement.h:
1585 * svg/SVGSVGElement.cpp:
1586 (WebCore::SVGSVGElement::didMoveToNewDocument):
1587 * svg/SVGSVGElement.h:
1589 2011-12-25 Kentaro Hara <haraken@chromium.org>
1591 REGRESSION(r102987): Fix the filename prefix of the generated empty .h
1592 and .cpp files for [Supplemental] IDLs
1593 https://bugs.webkit.org/show_bug.cgi?id=75082
1595 Reviewed by Darin Adler.
1597 In bug 74481, we changed generate-bindings.pl so that it generates empty .h
1598 and .cpp files for the [Supplemental] IDLs. However, the filename prefixes of
1599 those .h and .cpp files are wrong. This patch fixes the prefixes as follows:
1601 generator=JS => JS*.h, JS*.cpp
1602 generator=V8 => V8*.h, V8*.cpp
1603 generator=ObjC => DOM*.h, DOM*.cpp
1604 generator=GObject => WebKitDOM*.h, WebKitDOM*.cpp
1605 generator=CPP => WebDOM*.h, WebDOM*.cpp
1607 No new tests. No change in behavior.
1608 I confirmed that the names of generated .h and .cpp files are correct.
1610 * bindings/scripts/CodeGenerator.pm:
1611 (FileNamePrefix): Returns the prefix of file names.
1612 * bindings/scripts/CodeGeneratorCPP.pm:
1613 (GenerateInterface): Uses CodeGenerator::FileNamePrefix.
1614 * bindings/scripts/CodeGeneratorGObject.pm:
1615 (GenerateInterface): Ditto.
1616 * bindings/scripts/CodeGeneratorJS.pm:
1617 (GenerateInterface): Ditto.
1618 * bindings/scripts/CodeGeneratorObjC.pm:
1619 (GenerateInterface): Ditto.
1620 * bindings/scripts/CodeGeneratorV8.pm:
1621 (GenerateInterface): Ditto.
1622 * bindings/scripts/generate-bindings.pl:
1623 (generateEmptyHeaderAndCpp): Ditto.
1625 2011-12-25 Dan Bernstein <mitz@apple.com>
1627 WebCore changes for: Find indicators overlap when a match spans multiple text boxes
1628 https://bugs.webkit.org/show_bug.cgi?id=75220
1630 Reviewed by Darin Adler.
1632 * WebCore.exp.in: Exported new unionRect(const Vector<FloatRect>&) and existing
1633 FloatRect::intersects().
1634 * platform/graphics/FloatRect.cpp:
1635 (WebCore::unionRect): Added.
1636 * platform/graphics/FloatRect.h:
1638 2011-12-25 Darin Adler <darin@apple.com>
1640 Use OwnPtr for CSSFontFace::m_sources
1641 https://bugs.webkit.org/show_bug.cgi?id=75219
1643 Reviewed by Dan Bernstein.
1645 * css/CSSFontFace.cpp:
1646 (WebCore::CSSFontFace::isLoaded): Use the same size_t idiom here as in the rest
1648 (WebCore::CSSFontFace::isValid): Ditto. Also removed unneeded empty special casing.
1649 (WebCore::CSSFontFace::addSource): Changed to take a PassOwnPtr. Reordered so the
1650 PassOwnPtr zeroing does not cause trouble.
1651 (WebCore::CSSFontFace::getFontData): Added call to get.
1652 (WebCore::CSSFontFace::hasSVGFontFaceSource): Use the same size_t idiom here as in
1653 the rest of the functions.
1655 * css/CSSFontFace.h: Use PassOwnPtr for addSource argument, and Vector<OwnPtr> for
1656 the m_sources vector.
1658 * css/CSSFontSelector.cpp:
1659 (WebCore::CSSFontSelector::addFontFaceRule): Use OwnPtr and PassOwnPtr for font face
1660 sources that are passed to addSource.
1662 * css/CSSSegmentedFontFace.cpp: Added a now-needed include.
1664 2011-12-24 Jarred Nicholls <jarred@sencha.com>
1666 Allow XMLHttpRequest responseType to be set at any state up to and including HEADERS_RECEIVED
1667 https://bugs.webkit.org/show_bug.cgi?id=75190
1669 XMLHttpRequest.responseType should be modifiable at any state up to and including the
1670 HEADERS_RECEIVED state. Therefore, subsequent calls to open() should not reset responseType
1671 to its default value, and calls to open() must follow the same spec mandate set forth in
1672 setResponseType() for synchronous HTTP(S) requests made from the window context.
1674 Reviewed by Alexey Proskuryakov.
1676 Tests: fast/xmlhttprequest/xmlhttprequest-responsetype-before-open-sync-request.html
1677 fast/xmlhttprequest/xmlhttprequest-responsetype-before-open.html
1678 fast/xmlhttprequest/xmlhttprequest-responsetype-set-at-headers-received.html
1680 * xml/XMLHttpRequest.cpp:
1681 (WebCore::XMLHttpRequest::setResponseType):
1682 Prevent setting the value only when in LOADING and DONE states. No longer check if
1683 m_loader is present, which is instantiated on a call to send(), because responseType
1684 can be safely changed after a request is sent.
1685 (WebCore::XMLHttpRequest::open):
1686 Do not reset m_responseTypeCode to the default value, and prevent calls to open()
1687 for synchronous HTTP(S) requests made from the window context when m_responseTypeCode
1688 is not the default value.
1690 2011-12-25 Sam Weinig <sam@webkit.org>
1692 Fix tests failing as a result of r103643
1693 https://bugs.webkit.org/show_bug.cgi?id=75209
1695 Reviewed by Dan Bernstein.
1697 Switch accidental switch of default scroll granularity from
1698 ScrollByPageWheelEvent back to ScrollByPixelWheelEvent.
1700 * platform/mac/PlatformEventFactory.mm:
1701 (WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder):
1703 2011-12-25 Darin Adler <darin@apple.com>
1705 Change CSS canvas code that does HashMap get/set to use the more efficient add idiom
1706 https://bugs.webkit.org/show_bug.cgi?id=75204
1708 Reviewed by Dan Bernstein.
1711 (WebCore::Document::getCSSCanvasContext): Change local variable name of element to
1712 element; it's not the function result, so not good to name it result.
1713 (WebCore::Document::getCSSCanvasElement): Use add instead of get/set so we only do
1714 one hash table lookup.
1716 2011-12-24 Andreas Kling <awesomekling@apple.com>
1718 CSSElementStyleDeclarations should never move between elements.
1719 <http://webkit.org/b/75198>
1721 Reviewed by Anders Carlsson.
1723 Have the CSSElementStyleDeclaration subclasses take a StyledElement* in
1724 the constructor and replace setElement(StyledElement*) by clearElement().
1726 No behavior change, just enforcing the current behavior at compile-time.
1728 * css/CSSElementStyleDeclaration.h:
1729 (WebCore::CSSElementStyleDeclaration::clearElement):
1730 (WebCore::CSSElementStyleDeclaration::CSSElementStyleDeclaration):
1731 * css/CSSInlineStyleDeclaration.h:
1732 (WebCore::CSSInlineStyleDeclaration::create):
1733 (WebCore::CSSInlineStyleDeclaration::CSSInlineStyleDeclaration):
1734 * dom/StyledElement.cpp:
1735 (WebCore::StyledElement::createInlineStyleDecl):
1736 (WebCore::StyledElement::destroyInlineStyleDecl):
1737 * svg/SVGFontFaceElement.cpp:
1738 (WebCore::FontFaceStyleDeclaration::FontFaceStyleDeclaration):
1740 2011-12-23 Andreas Kling <awesomekling@apple.com>
1742 Decouple CSSMappedAttributeDeclaration from element completely.
1743 <http://webkit.org/b/75187>
1745 Reviewed by Darin Adler.
1747 Let CSSMappedAttributeDeclaration inherit from CSSMutableDeclaration instead
1748 of CSSElementStyleDeclaration. Add methods to CSSMappedAttributeDeclaration
1749 for setting properties that also take a StyledElement* and use that mechanism
1750 instead of temporarily associating an element with the declaration.
1752 This reduces the size of mapped attributes by 4/8 bytes, but more importantly
1753 opens a number of ways to simplify style declarations in future patches.
1755 * css/CSSMutableStyleDeclaration.h:
1756 * dom/CSSMappedAttributeDeclaration.cpp:
1757 (WebCore::CSSMappedAttributeDeclaration::setNeedsStyleRecalc):
1758 (WebCore::CSSMappedAttributeDeclaration::setMappedImageProperty):
1759 (WebCore::CSSMappedAttributeDeclaration::setMappedLengthProperty):
1760 (WebCore::CSSMappedAttributeDeclaration::setMappedProperty):
1761 (WebCore::CSSMappedAttributeDeclaration::removeMappedProperty):
1762 * dom/CSSMappedAttributeDeclaration.h:
1763 (WebCore::CSSMappedAttributeDeclaration::CSSMappedAttributeDeclaration):
1765 Add/move methods to CSSMappedAttributeDeclaration for setting/removing
1766 properties that also take a StyledElement*. That element is used for
1767 scheduling style recalc and passing the right document to CSSParser.
1770 * css/CSSParser.cpp:
1771 (WebCore::parseColorValue):
1772 (WebCore::parseSimpleLengthValue):
1773 (WebCore::CSSParser::parseValue):
1774 (WebCore::CSSParser::parseMappedAttributeValue):
1776 Added a parsedMappedAttributeValue() alternative to parseValue() that
1777 takes a StyledElement*.
1779 * dom/StyledElement.h:
1780 * html/HTMLElement.cpp:
1781 (WebCore::HTMLElement::setContentEditable):
1783 Add (and use) a StyledElement::removeCSSProperty() complement to the
1784 addCSS*() functions.
1786 * dom/StyledElement.cpp:
1787 (WebCore::StyledElement::attributeChanged):
1788 (WebCore::StyledElement::removeCSSProperty):
1789 (WebCore::StyledElement::addCSSProperty):
1790 (WebCore::StyledElement::addCSSImageProperty):
1791 (WebCore::StyledElement::addCSSLength):
1792 (WebCore::StyledElement::addCSSColor):
1793 (WebCore::StyledElement::createMappedDecl):
1794 * html/HTMLTableElement.cpp:
1795 (WebCore::HTMLTableElement::additionalAttributeStyleDecls):
1796 (WebCore::HTMLTableElement::addSharedCellBordersDecl):
1797 (WebCore::HTMLTableElement::addSharedCellPaddingDecl):
1798 (WebCore::HTMLTableElement::addSharedGroupDecls):
1800 Use the setMapped*Property() functions to plumb the element through.
1802 * css/CSSElementStyleDeclaration.h:
1804 Update comment about CSSElementStyleDeclaration's subclasses.
1806 2011-12-24 Jarred Nicholls <jarred@sencha.com>
1808 Allow XMLHttpRequest withCredentials to be set prior to a call to open()
1809 https://bugs.webkit.org/show_bug.cgi?id=75194
1811 XMLHttpRequest.withCredentials attribute should be modifiable prior to the OPENED state per
1812 the W3C spec. See http://dvcs.w3.org/hg/xhr/raw-file/tip/Overview.html#the-withcredentials-attribute
1814 Reviewed by Alexey Proskuryakov.
1816 Test: fast/xmlhttprequest/xmlhttprequest-withcredentials-before-open.html
1818 * xml/XMLHttpRequest.cpp:
1819 (WebCore::XMLHttpRequest::setWithCredentials):
1820 Prevent setting the value only after the OPENED state.
1822 2011-12-24 Andreas Kling <awesomekling@apple.com>
1824 Remove empty inline RenderStyle destructor.
1825 <http://webkit.org/b/75188>
1827 Rubber-stamped by Anders "Ordvits" Carlsson.
1829 * rendering/style/RenderStyle.h:
1831 2011-12-24 Andreas Kling <awesomekling@apple.com>
1833 RenderStyle: Inline the destructor.
1834 <http://webkit.org/b/75188>
1836 Reviewed by Kenneth Rohde Christiansen.
1838 The (empty) RenderStyle destructor gets a little hot sometimes, reaching up
1839 to 0.4% when loading the full HTML5 spec. Inline it to remove the pointless
1842 * rendering/style/RenderStyle.cpp:
1843 * rendering/style/RenderStyle.h:
1844 (WebCore::RenderStyleBitfields::~RenderStyle):
1846 2011-12-23 Noel Gordon <noel.gordon@gmail.com>
1848 JPEG decoders should only save color profile markers if color management is enabled
1849 https://bugs.webkit.org/show_bug.cgi?id=75182
1851 Reviewed by Adam Barth.
1853 No new tests. Covered by existing tests.
1854 fast/images/ycbcr-with-cmyk-color-profile.html
1855 fast/images/gray-scale-jpeg-with-color-profile.html
1856 fast/images/cmyk-jpeg-with-color-profile.html
1857 fast/images/color-jpeg-with-color-profile.html
1859 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1860 (WebCore::JPEGImageReader::JPEGImageReader): Store color profile (JPEG_APP0 + 2) markers
1861 using the iccjpeg helper setup_read_icc_profile() if color management is enabled.
1863 2011-12-23 Alice Boxhall <aboxhall@chromium.org>
1865 Fix crash when adding paragraph in contenteditable with role=textbox.
1866 https://bugs.webkit.org/show_bug.cgi?id=75159
1868 Reviewed by Ryosuke Niwa.
1870 Test: accessibility/textbox-role-on-contenteditable-crash.html
1872 * accessibility/AccessibilityRenderObject.cpp:
1873 (WebCore::AccessibilityRenderObject::childrenChanged): Use rendererIsEditable() rather than isContentEditable()
1874 as this method is called during render layouts, and isContentEditable() triggers a layout update, which crashes.
1876 2011-12-23 Noel Gordon <noel.gordon@gmail.com>
1878 [chromium] JPEG image with CMYK ICC color profile renders color-inverted and squashed
1879 https://bugs.webkit.org/show_bug.cgi?id=74400
1881 Reviewed by Adam Barth.
1883 Use color profiles for GRAYSCALE, RGB, YCbCr, CMYK and YCCK jpeg images only if their
1884 embedded color profile is from an RGB color space input device.
1887 fast/images/ycbcr-with-cmyk-color-profile.html
1888 - YCbCr image, with CMYK output device color profile.
1890 fast/images/gray-scale-jpeg-with-color-profile.html
1891 - YCbCr image, with GRAY input device color profile.
1892 fast/images/cmyk-jpeg-with-color-profile.html
1893 - YCCK image, with CMYK output device color profile.
1894 fast/images/color-jpeg-with-color-profile.html
1895 - YCbCr image, with RGB input device color profile.
1897 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1898 (WebCore::rgbColorProfile): Return true if the profile has an RGB color space.
1899 (WebCore::inputDeviceColorProfile): Return true if the profile is from an input device.
1900 (WebCore::readColorProfile): Ignore the embedded color profile unless if it is from
1901 an RGB color space input device.
1902 (WebCore::JPEGImageReader::decode):
1904 2011-12-23 Dan Bernstein <mitz@apple.com>
1906 Print dlerror() when dyld functions fail unexpectedly
1907 https://bugs.webkit.org/show_bug.cgi?id=75185
1909 Reviewed by Sam Weinig.
1911 * platform/mac/SoftLinking.h:
1913 2011-12-23 Sam Weinig <sam@webkit.org>
1915 Start extracting platform specific bits out of PlatformEvents
1916 https://bugs.webkit.org/show_bug.cgi?id=75063
1918 Reviewed by Anders Carlsson.
1923 * WebCore.xcodeproj/project.pbxproj:
1924 Add factory, remove implementation files for mac PlatformWheelEvent
1925 and PlatformMouseEvent.
1927 * page/mac/EventHandlerMac.mm:
1928 (WebCore::EventHandler::wheelEvent):
1929 (WebCore::EventHandler::keyEvent):
1930 (WebCore::EventHandler::currentPlatformMouseEvent):
1931 Switch to use the factory.
1933 * platform/PlatformEvent.h:
1934 (WebCore::PlatformEvent::shiftKey):
1935 (WebCore::PlatformEvent::ctrlKey):
1936 (WebCore::PlatformEvent::altKey):
1937 (WebCore::PlatformEvent::metaKey):
1938 (WebCore::PlatformEvent::modifiers):
1939 (WebCore::PlatformEvent::PlatformEvent):
1940 Switch to storing the modifiers as bits on an unsigned
1941 instead of as individual bools.
1943 * platform/PlatformGestureEvent.h:
1944 Remove unused timestamp member.
1946 * platform/PlatformKeyboardEvent.h:
1947 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1948 (WebCore::PlatformKeyboardEvent::keyIdentifier):
1949 (WebCore::PlatformKeyboardEvent::macCharCode):
1950 (WebCore::PlatformKeyboardEvent::isSystemKey):
1951 Give this class a more consistent interface across platforms,
1952 and remove constructor that took an NSEvent.
1954 * platform/PlatformMouseEvent.h:
1955 Remove constructor that took an NSEvent (and an unused constructor that took
1956 many arguments) as well as some free functions for point conversion.
1958 * platform/PlatformWheelEvent.h:
1959 Remove constructor that took an NSEvent and an unnecessary override of the timestamp()
1962 * platform/mac/KeyEventMac.mm:
1963 Removed constructor and moved helpers to PlatformEventFactory.
1965 * platform/mac/PlatformEventFactory.h: Added.
1966 * platform/mac/PlatformEventFactory.mm: Added.
1967 (WebCore::globalPoint):
1968 (WebCore::globalPointForEvent):
1969 (WebCore::pointForEvent):
1970 (WebCore::mouseButtonForEvent):
1971 (WebCore::mouseEventTypeForEvent):
1972 (WebCore::clickCountForEvent):
1973 (WebCore::momentumPhaseForEvent):
1974 (WebCore::phaseForEvent):
1975 (WebCore::gestureEventTypeForEvent):
1976 (WebCore::textFromEvent):
1977 (WebCore::unmodifiedTextFromEvent):
1978 (WebCore::keyIdentifierForKeyEvent):
1979 (WebCore::isKeypadEvent):
1980 (WebCore::windowsKeyCodeForKeyEvent):
1981 (WebCore::isKeyUpEvent):
1982 (WebCore::modifiersForEvent):
1983 (WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder):
1984 (WebCore::PlatformEventFactory::createPlatformMouseEvent):
1985 (WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder):
1986 (WebCore::PlatformEventFactory::createPlatformWheelEvent):
1987 (WebCore::PlatformKeyboardEventBuilder::PlatformKeyboardEventBuilder):
1988 (WebCore::PlatformEventFactory::createPlatformKeyboardEvent):
1989 (WebCore::PlatformGestureEventBuilder::PlatformGestureEventBuilder):
1990 (WebCore::PlatformEventFactory::createPlatformGestureEvent):
1991 Consolidate platform event creation logic and add factory functions.
1993 * platform/mac/PlatformMouseEventMac.mm: Removed.
1994 * platform/mac/WheelEventMac.mm: Removed.
1996 * platform/mac/WebCoreSystemInterface.h:
1997 * platform/mac/WebCoreSystemInterface.mm:
1998 Expose wkGetNSEventKeyChar in WebCore.
2000 * platform/gtk/PlatformKeyboardEventGtk.cpp:
2001 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2002 * platform/gtk/PlatformMouseEventGtk.cpp:
2003 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2004 * platform/gtk/PlatformWheelEventGtk.cpp:
2005 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2006 * platform/qt/PlatformKeyboardEventQt.cpp:
2007 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2008 * platform/qt/PlatformMouseEventQt.cpp:
2009 (WebCore::mouseEventModifiersFromQtKeyboardModifiers):
2010 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2011 * platform/qt/PlatformTouchEventQt.cpp:
2012 (WebCore::PlatformTouchEvent::PlatformTouchEvent):
2013 * platform/win/KeyEventWin.cpp:
2014 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2015 * platform/win/WheelEventWin.cpp:
2016 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2017 Update for new variables/names.
2019 2011-12-22 Andreas Kling <kling@webkit.org>
2021 CSSParser: Avoid creating dummy declaration in parseColor() slow path.
2022 <http://webkit.org/b/75104>
2024 Reviewed by Darin Adler.
2026 We only needed the dummy declaration to trigger the instantiation of
2027 a CSSValuePool. Added an ensureCSSValuePool() method and have parseColor()
2030 Also renamed the fast-path parseColor() to fastParseColor() and reordered
2031 the arguments for consistency with the slow-path parseColor().
2033 * css/CSSParser.cpp:
2034 (WebCore::parseColorValue):
2035 (WebCore::CSSParser::parseColor):
2036 (WebCore::CSSParser::ensureCSSValuePool):
2037 (WebCore::CSSParser::fastParseColor):
2038 (WebCore::CSSParser::parseColorFromValue):
2041 2011-12-21 Andreas Kling <kling@webkit.org>
2043 Automate elements' registration as document namedItem/extraNamedItem.
2044 <http://webkit.org/b/74991>
2046 Reviewed by Antti Koivisto.
2048 Remove caching of the "id" and "name" attributes on applet, embed, form,
2049 image and object elements. We were caching them to keep the document's
2050 map of named and "extra named" (named by id) item counts in sync.
2052 Instead, add a hook to Element::willModifyAttribute() that detects when
2053 the attributes are being changed and handle the registration/unregistration
2054 automatically if the element returns true for shouldRegisterAsNamedItem()
2055 or shouldRegisterAsExtraNamedItem() respectively.
2057 This shrinks the elements by two AtomicStrings (8 or 16 bytes) each.
2059 IFrame elements retain the old mechanism for now, as there are some subtle
2060 differences to how that's handled.
2063 (WebCore::Node::hasName):
2064 (WebCore::Node::setHasName):
2066 Cache whether we have a "name" attribute or not (1 bit on Node.)
2067 This is done in order to minimize the overhead added to Element's
2068 insertedIntoDocument() and removeFromDocument().
2070 * dom/StyledElement.cpp:
2071 (WebCore::StyledElement::attributeChanged):
2073 Update the Node's has-name flag as appropriate.
2076 (WebCore::Element::updateNamedItemRegistration):
2077 (WebCore::Element::updateExtraNamedItemRegistration):
2079 Added. Called when the "name" and "id" attributes are changed.
2080 Updates the document's named item maps accordingly.
2082 (WebCore::Element::insertedIntoDocument):
2083 (WebCore::Element::removedFromDocument):
2085 Make sure updateName() is called in addition to updateId() when applicable.
2088 (WebCore::Element::shouldRegisterAsNamedItem):
2089 (WebCore::Element::shouldRegisterAsExtraNamedItem):
2091 Added. If an element returns true for these, it will be automatically
2092 registered with the document when the name/id attribute changes.
2094 (WebCore::Element::updateId):
2095 (WebCore::Element::updateName):
2097 Register/unregister from the document's named item maps as appropriate.
2099 (WebCore::Element::willModifyAttribute):
2101 Add updateName() hook in addition to the existing updateId() hook.
2103 * dom/NamedNodeMap.cpp:
2104 (WebCore::NamedNodeMap::setAttributes):
2106 Make sure updateName() is called when we're cloning the attributes
2107 from another element.
2109 * html/HTMLAppletElement.cpp:
2110 (WebCore::HTMLAppletElement::parseMappedAttribute):
2111 * html/HTMLAppletElement.h:
2112 * html/HTMLEmbedElement.cpp:
2113 (WebCore::HTMLEmbedElement::parseMappedAttribute):
2114 (WebCore::HTMLEmbedElement::insertedIntoDocument):
2115 * html/HTMLEmbedElement.h:
2116 * html/HTMLFormElement.cpp:
2117 (WebCore::HTMLFormElement::insertedIntoDocument):
2118 (WebCore::HTMLFormElement::removedFromDocument):
2119 (WebCore::HTMLFormElement::parseMappedAttribute):
2120 * html/HTMLFormElement.h:
2121 * html/HTMLImageElement.cpp:
2122 (WebCore::HTMLImageElement::parseMappedAttribute):
2123 (WebCore::HTMLImageElement::insertedIntoDocument):
2124 * html/HTMLImageElement.h:
2125 * html/HTMLObjectElement.cpp:
2126 (WebCore::HTMLObjectElement::parseMappedAttribute):
2127 (WebCore::HTMLObjectElement::insertedIntoDocument):
2128 (WebCore::HTMLObjectElement::removedFromDocument):
2129 * html/HTMLObjectElement.h:
2130 * html/HTMLPlugInElement.h:
2132 Remove duplicated code that is now handled by Element.
2134 * html/HTMLObjectElement.cpp:
2135 (WebCore::HTMLObjectElement::updateDocNamedItem):
2136 (WebCore::HTMLObjectElement::formControlName):
2138 Use fastGetAttribute() since we no longer cache the name.
2140 2011-12-23 Anders Carlsson <andersca@apple.com>
2142 Add two (currently unused) new member functions to ScrollElasticityControllerClient
2143 https://bugs.webkit.org/show_bug.cgi?id=75179
2145 Reviewed by Dan Bernstein.
2147 This is so we'll be able to move more code to ScrollElasticityController.
2149 * platform/mac/ScrollAnimatorMac.h:
2150 * platform/mac/ScrollAnimatorMac.mm:
2151 (WebCore::ScrollAnimatorMac::pinnedInDirection):
2152 (WebCore::ScrollAnimatorMac::immediateScrollByWithoutContentEdgeConstraints):
2153 * platform/mac/ScrollElasticityController.h:
2155 2011-12-23 Simon Fraser <simon.fraser@apple.com>
2157 Blur filter doesn't invalidate enough
2158 https://bugs.webkit.org/show_bug.cgi?id=74891
2160 Reviewed by Darin Adler.
2162 Take the effects of filters into account for repainting; we need
2163 to inflate the repaint rect by the outsets provided by the filter.
2165 Test: css3/filters/filter-repaint.html
2167 * rendering/RenderBox.cpp:
2168 (WebCore::RenderBox::computeRectForRepaint):
2169 * rendering/RenderInline.cpp:
2170 (WebCore::RenderInline::computeRectForRepaint):
2172 2011-12-23 Simon Fraser <simon.fraser@apple.com>
2174 Filters should apply to inline elements
2175 https://bugs.webkit.org/show_bug.cgi?id=75152
2177 Reviewed by Darin Adler.
2179 Filters need to cause creation of RenderLayers for inlines, just like
2180 opacity and masks do.
2182 Test: css3/filters/filtered-inline.html
2184 * rendering/RenderInline.h:
2185 (WebCore::RenderInline::requiresLayer):
2186 * rendering/RenderTableRow.h: Remove an obviously incorrect comment.
2188 2011-12-23 Jarred Nicholls <jarred@sencha.com>
2190 Synchronous XHR in window context should not support new XHR responseTypes for HTTP(S) requests
2191 https://bugs.webkit.org/show_bug.cgi?id=72154
2193 Per the latest W3C editor draft: http://dvcs.w3.org/hg/xhr/raw-file/tip/Overview.html
2194 This is a spec-mandated attempt to thwart and otherwise discourage the use of synchronous XHR
2195 in the window context by deliberately not exposing newer functionality. Here we are disabling
2196 the use of responseType in synchronous HTTP(S) XHR requests from the window context.
2198 When a user attempts this action, an InvalidAccessError exception is thrown and a message is
2199 printed to the console to further explain.
2201 Renamed reportUnsafeUsage to a more generic name, and hoisted it up so it would be defined
2202 earlier and thus referenceable by setResponseType.
2204 Reviewed by Alexey Proskuryakov.
2206 Test: fast/xmlhttprequest/xmlhttprequest-responsetype-sync-request.html
2208 * xml/XMLHttpRequest.cpp:
2209 (WebCore::logConsoleError):
2210 reportUnsafeUsage -> logConsoleError
2211 (WebCore::XMLHttpRequest::setResponseType):
2212 (WebCore::XMLHttpRequest::setRequestHeader):
2213 reportUnsafeUsage -> logConsoleError
2214 (WebCore::XMLHttpRequest::getResponseHeader):
2215 reportUnsafeUsage -> logConsoleError
2216 (WebCore::XMLHttpRequest::didFail):
2217 reportUnsafeUsage -> logConsoleError
2219 2011-12-23 Alexander Pavlov <apavlov@chromium.org>
2221 Web Inspector: Implement a worker for parsing out JavaScript function data
2222 https://bugs.webkit.org/show_bug.cgi?id=75166
2224 Reviewed by Pavel Feldman.
2226 Test: inspector/debugger/script-extract-outline.html
2228 * inspector/front-end/ScriptFormatter.js:
2229 (WebInspector.ScriptFormatter.prototype.formatContent):
2230 * inspector/front-end/ScriptFormatterWorker.js:
2235 (Array.prototype.keySet):
2237 2011-12-23 Ilya Tikhonovsky <loislo@chromium.org>
2239 Unreviewed, rolling out r103624.
2240 http://trac.webkit.org/changeset/103624
2241 https://bugs.webkit.org/show_bug.cgi?id=68916
2243 Broke Snow Leopard builders
2246 * DerivedSources.cpp:
2247 * DerivedSources.pri:
2248 * GNUmakefile.list.am:
2250 * WebCore.xcodeproj/project.pbxproj:
2251 * bindings/js/JSDirectoryEntryCustom.cpp:
2252 (WebCore::JSDirectoryEntry::getFile):
2253 (WebCore::JSDirectoryEntry::getDirectory):
2254 * bindings/js/JSDirectoryEntrySyncCustom.cpp:
2255 (WebCore::getFlags):
2256 * bindings/v8/custom/V8DirectoryEntryCustom.cpp:
2257 (WebCore::V8DirectoryEntry::getDirectoryCallback):
2258 (WebCore::V8DirectoryEntry::getFileCallback):
2259 * bindings/v8/custom/V8DirectoryEntrySyncCustom.cpp:
2260 (WebCore::getFlags):
2261 * fileapi/WebKitFlags.idl: Added.
2262 * page/DOMWindow.idl:
2263 * workers/WorkerContext.idl:
2265 2011-12-23 Eric Uhrhane <ericu@chromium.org>
2267 [fileapi] WebKitFlags should not be constructable per Directories & System spec
2268 https://bugs.webkit.org/show_bug.cgi?id=68916
2270 Reviewed by Eric Seidel.
2272 Remove IDL for the object and all DOM references to it.
2273 * fileapi/WebKitFlags.idl: Removed.
2274 * page/DOMWindow.idl:
2275 * workers/WorkerContext.idl:
2276 Remove references to the JSC/V8 objects compiled from the IDL.
2277 * bindings/js/JSDirectoryEntryCustom.cpp:
2278 (WebCore::JSDirectoryEntry::getFile):
2279 (WebCore::JSDirectoryEntry::getDirectory):
2280 * bindings/js/JSDirectoryEntrySyncCustom.cpp:
2281 (WebCore::getFlags):
2282 * bindings/v8/custom/V8DirectoryEntryCustom.cpp:
2283 (WebCore::V8DirectoryEntry::getDirectoryCallback):
2284 (WebCore::V8DirectoryEntry::getFileCallback):
2285 * bindings/v8/custom/V8DirectoryEntrySyncCustom.cpp:
2286 (WebCore::getFlags):
2289 * WebCore.vcproj/WebCore.vcproj:
2290 * WebCore.xcodeproj/project.pbxproj:
2291 * WebCore/CMakeLists.txt:
2292 * WebCore/CodeGenerators.pri:
2293 * WebCore/DerivedSources.cpp:
2294 * WebCore/GNUmakefile.list.am:
2296 2011-12-23 Pavel Feldman <pfeldman@google.com>
2298 Web Inspector: Migrate to native Function.prototype.bind; fix front-end compilation with the
2299 version of compiler that respects Function.prototype.bind.
2300 https://bugs.webkit.org/show_bug.cgi?id=75170
2302 Reviewed by Yury Semikhatsky.
2304 * inspector/front-end/ApplicationCacheModel.js:
2305 * inspector/front-end/CSSKeywordCompletions.js:
2306 (WebInspector.CSSKeywordCompletions.colors):
2307 * inspector/front-end/CSSStyleModel.js:
2308 * inspector/front-end/CompilerSourceMapping.js:
2309 * inspector/front-end/DOMAgent.js:
2310 (WebInspector.DOMAgent.prototype.pushNodeToFrontend):
2311 (WebInspector.DOMAgent.prototype.pushNodeByPathToFrontend):
2312 (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable.onDocumentAvailable):
2313 (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable):
2314 (WebInspector.DOMAgent.prototype._loadNodeAttributes):
2315 (WebInspector.DOMAgent.prototype.querySelector):
2316 (WebInspector.DOMAgent.prototype.querySelectorAll):
2317 * inspector/front-end/DebuggerModel.js:
2318 * inspector/front-end/DebuggerPresentationModel.js:
2319 * inspector/front-end/ExtensionAPI.js:
2320 (injectedExtensionAPI.InspectorExtensionAPI):
2321 (injectedExtensionAPI):
2322 * inspector/front-end/ExtensionPanel.js:
2323 * inspector/front-end/NetworkManager.js:
2324 (WebInspector.NetworkManager.prototype.enableResourceTracking):
2325 (WebInspector.NetworkManager.prototype.disableResourceTracking):
2326 * inspector/front-end/Script.js:
2327 * inspector/front-end/Settings.js:
2328 * inspector/front-end/TextPrompt.js:
2329 (WebInspector.TextPrompt.prototype.complete):
2330 * inspector/front-end/utilities.js:
2332 2011-12-23 Leo Yang <leo.yang@torchmobile.com.cn>
2334 [BlackBerry] Add the BlackBerry specific pauseLoad(bool) to ResourceHandle
2335 https://bugs.webkit.org/show_bug.cgi?id=75162
2337 Reviewed by George Staikos.
2339 The porting can be built now, no new tests so far.
2341 * platform/network/ResourceHandle.h:
2343 2011-12-23 Karl Koscher <supersat@chromium.org>
2345 Give embedders a chance to handle postMessage calls
2346 https://bugs.webkit.org/show_bug.cgi?id=73883
2348 To support cross-process postMessage calls in Chromium (bug 73337), we need to intercept
2349 postMessage calls to proxy windows. Originally we were just going to add a native event
2350 listener on the Chromium side, but that required more changes to WebKit and was a bit of
2351 a hack. See bug 73359 for a discuss about moving to this approach.
2353 Reviewed by Adam Barth.
2355 Test: platform/chromium/fast/events/intercept-postmessage.html
2357 * loader/FrameLoaderClient.h:
2358 (WebCore::FrameLoaderClient::willCheckAndDispatchPostMessage): new method to allow the
2359 embedder to intercept postMessage calls
2360 * page/DOMWindow.cpp:
2361 (WebCore::DOMWindow::postMessageTimerFired): add a call to
2362 FrameLoaderClient::willCheckAndDispatchPostMessage
2364 2011-12-23 Tom Sepez <tsepez@chromium.org>
2366 XSLT-created HTML documents do not inherit content-security-policy from originally loaded XML.
2367 https://bugs.webkit.org/show_bug.cgi?id=75043
2369 Reviewed by Adam Barth.
2371 Test: http/tests/security/contentSecurityPolicy/xsl-img-blocked.php
2373 * page/ContentSecurityPolicy.cpp:
2374 (WebCore::ContentSecurityPolicy::copyStateFrom):
2375 (WebCore::ContentSecurityPolicy::didReceiveHeader):
2376 * page/ContentSecurityPolicy.h:
2377 * xml/XSLTProcessor.cpp:
2378 (WebCore::XSLTProcessor::createDocumentFromSource):
2380 2011-12-23 Darin Adler <darin@apple.com>
2382 REGRESSION (r97533): Optgroup label is not disabled
2383 https://bugs.webkit.org/show_bug.cgi?id=74869
2385 Reviewed by Alexey Proskuryakov.
2387 * rendering/RenderMenuList.cpp:
2388 (WebCore::RenderMenuList::itemIsEnabled): Added back a line of code that was
2389 accidentally deleted as part of the refactoring in r97533. This line of code
2390 ensures that any items that are not option elements are disabled.
2392 2011-12-19 Alexander Pavlov <apavlov@chromium.org>
2394 Web Inspector: Add CSSStyleSelector instrumentation calls towards implementing a CSS selector profiler
2395 https://bugs.webkit.org/show_bug.cgi?id=74863
2397 Performance checks run on PerformanceTest/Parser/html5-full-render.html did not result in any noticeable
2398 perf regression, as the instrumentation calls are inline and bail out early if there are no
2399 Web Inspector frontends open.
2401 Reviewed by Antti Koivisto.
2403 No new tests, as the functionality is not bound to any user-visible outputs.
2405 * css/CSSStyleSelector.cpp:
2406 (WebCore::CSSStyleSelector::matchRulesForList):
2407 (WebCore::CSSStyleSelector::applyDeclaration):
2408 * inspector/InspectorInstrumentation.cpp:
2409 (WebCore::InspectorInstrumentation::willMatchRuleImpl):
2410 (WebCore::InspectorInstrumentation::didMatchRuleImpl):
2411 (WebCore::InspectorInstrumentation::willProcessRuleImpl):
2412 (WebCore::InspectorInstrumentation::didProcessRuleImpl):
2413 * inspector/InspectorInstrumentation.h:
2414 (WebCore::InspectorInstrumentation::willMatchRule):
2415 (WebCore::InspectorInstrumentation::didMatchRule):
2416 (WebCore::InspectorInstrumentation::willProcessRule):
2417 (WebCore::InspectorInstrumentation::didProcessRule):
2419 2011-12-23 Ivan Briano <ivan@profusion.mobi>
2421 [EFL] Fix building with Glib support disabled
2422 https://bugs.webkit.org/show_bug.cgi?id=70990
2424 Reviewed by Martin Robinson.
2426 Add forward declaration for cairo_surface_t, missing when building
2427 the EFL port with Glib disabled.
2429 * platform/cairo/WidgetBackingStore.h:
2431 2011-12-23 Adam Klein <adamk@chromium.org>
2433 Minimize callsites and duplication of before/after advice for attribute mutations
2434 https://bugs.webkit.org/show_bug.cgi?id=75054
2436 Reviewed by Ryosuke Niwa.
2438 r103452 helpfully made before and after advice regarding attribute
2439 changes symmetrical. This change finishes that work, by pulling
2440 together all the before/after work, not just the crumbs previously
2441 covered. This includes incrementing Document::domTreeVersion()
2442 when an attribute is about to be changed, Inspector instrumentation,
2443 and MutationEvent dispatch. This is in addition to the previous code,
2444 which handled enqueueing MutationRecords for MutationObservers and
2445 updating the Document's list of IDs.
2447 The only change in behavior should be in InspectorInstrumentation,
2448 which causes DOM breakpoints to occur for more cases of Attribute
2449 mutation. This seems like more correct behavior, and a test has
2450 been included to exercise it.
2452 Hopefully the last Attribute-related refactor for awhile.
2455 (WebCore::Attr::setValue): Update to call didModifyAttribute instead
2456 of attributeChanged.
2458 (WebCore::Element::removeAttribute): Got rid of
2459 removeAttributeInternal as most of that logic moved back into
2460 NamedNodeMap::removeAttribute.
2461 (WebCore::Element::setAttributeInternal): Reorganized to read better
2462 now that only some cases result in calls to will/didModifyAttribute.
2463 (WebCore::Element::willModifyAttribute): Un-inlined and added
2464 incDOMTreeVersion and InspectorInstrumentation calls.
2465 (WebCore::Element::didModifyAttribute): New method which encapsulates
2466 calling attributeChanged, InspectorInstrumentation, and MutationEvents.
2467 (WebCore::Element::didRemoveAttribute): New method which encapsulates
2468 calling attributeChanged, InspectorInstrumentation, and MutationEvents.
2469 Separate from didModifyAttribute because it has special handling of
2470 the removed Attribute's value.
2472 (WebCore::Element::willRemoveAttribute): New method which delegates to
2473 willModifyAttribute as appropriate.
2474 * dom/NamedNodeMap.cpp:
2475 (WebCore::NamedNodeMap::setNamedItem): Simplified.
2476 (WebCore::NamedNodeMap::removeNamedItem): Simplified.
2477 (WebCore::NamedNodeMap::addAttribute): Added calls to will/didModifyAttribute.
2478 (WebCore::NamedNodeMap::removeAttribute): ditto.
2479 (WebCore::NamedNodeMap::replaceAttribute): ditto.
2480 * svg/properties/SVGAnimatedPropertySynchronizer.h: Reverted changes
2481 made in r103452 now that addAttribute/removeAttribute once again
2482 call attributeChanged appropriately.
2484 2011-12-22 Matt Falkenhagen <falken@chromium.org>
2486 Map 'lang' and xml:lang attributes to '-webkit-locale' CSS property for use with font fallback and text-transform
2487 https://bugs.webkit.org/show_bug.cgi?id=67586
2489 Original patch by Jungshik Shin <jshin@chromium.org>
2491 Reviewed by Darin Adler.
2493 Tests: fast/text/lang-mapped-to-webkit-locale.xhtml
2494 fast/text/xml-lang-ignored-in-html.html
2496 * html/HTMLElement.cpp:
2497 (WebCore::HTMLElement::mapLanguageAttributeToLocale):
2498 (WebCore::HTMLElement::parseMappedAttribute): Map 'lang' and 'xml:lang' to -webkit-locale.
2499 * html/HTMLElement.h:
2501 2011-12-22 Ryosuke Niwa <rniwa@webkit.org>
2503 WinCE build fix after r103539.
2505 * rendering/svg/RenderSVGResource.cpp:
2506 (WebCore::RenderSVGResource::removeFromFilterCache):
2508 2011-12-22 Chris Marrin <cmarrin@apple.com>
2510 Crash and incorrect behavior when switching between hardware and software CSS filters
2511 https://bugs.webkit.org/show_bug.cgi?id=75130
2513 Reviewed by Simon Fraser.
2515 Test: css3/filters/crash-hw-sw-switch.html
2517 Backing store on layer gets fixed up (added or removed) after style change is evaluated
2518 so the state of the m_filter variable might not match the current filter state. Added
2519 updateOrRemoveFilterEffect() call to ensureBacking() and clearBacking() to get the
2520 m_filter property in the right state. Also added an ASSERT() where the crash was
2523 * rendering/RenderLayer.cpp:
2524 (WebCore::RenderLayer::paintLayer):
2525 (WebCore::RenderLayer::ensureBacking):
2526 (WebCore::RenderLayer::clearBacking):
2528 2011-12-22 Jon Lee <jonlee@apple.com>
2530 Radio buttons cut in download movie sheet
2531 https://bugs.webkit.org/show_bug.cgi?id=75128
2532 <rdar://problem/9399450>
2534 Reviewed by Dan Bernstein.
2536 Test: compositing/overflow/theme-affects-visual-overflow.html
2538 The clipping comes from the fact the visual overflow rect of the radio button's
2539 RenderBlock is not expanded to accommodate for the size of the button on the Mac
2540 platform. We use the existing RenderTheme::adjustRepaintRect() to make the
2541 appropriate adjustment. This, consequently, makes it unnecessary to have to
2542 recalculate it for repaint.
2544 * rendering/RenderBlock.cpp:
2545 (WebCore::RenderBlock::computeOverflow): As part of the overflow computation, we
2546 make a call to addVisualOverflowFromTheme().
2547 (WebCore::RenderBlock::addVisualOverflowFromTheme): Ask the theme to inflate the
2548 RenderBlock's rect if necessary, and add that to the visual overflow rect.
2549 * rendering/RenderBlock.h: Added addVisualOverflowFromTheme().
2550 * rendering/RenderBox.cpp:
2551 (WebCore::RenderBox::clippedOverflowRectForRepaint): Remove the call to
2552 adjustRepaintRect() since the rectangle r already uses the new visual overflow
2554 * rendering/RenderReplaced.cpp:
2555 (WebCore::RenderReplaced::clippedOverflowRectForRepaint): Remove the call to
2556 adjustRepaintRect() since the rectangle r already uses the new visual overflow
2559 2011-12-22 Chris Rogers <crogers@google.com>
2561 Fix mac build breakage - add SincResampler files to WebCore.xcodeproj
2562 https://bugs.webkit.org/show_bug.cgi?id=75139
2564 Unreviewed build fix.
2566 * WebCore.xcodeproj/project.pbxproj:
2568 2011-12-22 Simon Fraser <simon.fraser@apple.com>
2570 Animating some CSS filter values is wrong
2571 https://bugs.webkit.org/show_bug.cgi?id=75122
2573 Reviewed by Chris Marrin.
2575 Fix some reversed filter animation behavior for brightness,
2576 contrast and drop-shadow filters.
2578 Test: css3/filters/filter-animation-from-none.html
2580 * platform/graphics/filters/FilterOperation.cpp:
2581 (WebCore::BasicComponentTransferFilterOperation::blend): Just use the global blend() function.
2582 (WebCore::BasicComponentTransferFilterOperation::passthroughAmount): Add CONTRAST and BRIGHTNESS to the sswitch.
2583 (WebCore::GammaFilterOperation::blend): Fix the ordering.
2584 (WebCore::DropShadowFilterOperation::blend): Fix the ordering.
2586 2011-12-22 Chris Rogers <crogers@google.com>
2588 Fix mac build caused by improper include of "Locker.h"
2589 https://bugs.webkit.org/show_bug.cgi?id=75134
2591 Unreviewed build fix.
2593 * webaudio/MediaElementAudioSourceNode.cpp:
2595 2011-12-22 Anders Carlsson <andersca@apple.com>
2597 More ScrollAnimatorMac cleanup
2598 https://bugs.webkit.org/show_bug.cgi?id=75127
2600 Reviewed by Andreas Kling.
2602 Introduce a immediateScrollByWithoutContentEdgeConstraints and use it whenever we want to scroll by an
2603 offset instead of doing the setConstrainsScrollingToContentEdge dance.
2605 * platform/mac/ScrollAnimatorMac.h:
2606 * platform/mac/ScrollAnimatorMac.mm:
2607 (WebCore::ScrollAnimatorMac::immediateScrollByWithoutContentEdgeConstraints):
2608 (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
2609 (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
2611 2011-12-22 Chris Rogers <crogers@google.com>
2613 Implement MediaElementAudioSourceNode::setFormat() so numberOfChannels and sampleRate are accounted for
2614 https://bugs.webkit.org/show_bug.cgi?id=75057
2616 Reviewed by Eric Carlson.
2618 * GNUmakefile.list.am:
2620 * WebCore.xcodeproj/project.pbxproj:
2621 Add MultiChannelResampler source files to makefiles.
2622 * platform/audio/MultiChannelResampler.cpp: Added.
2623 (WebCore::MultiChannelResampler::MultiChannelResampler):
2624 (WebCore::MultiChannelResampler::process):
2625 * platform/audio/MultiChannelResampler.h: Added.
2626 Add MultiChannelResampler implementation which uses one SincResampler per channel.
2627 * webaudio/MediaElementAudioSourceNode.cpp:
2628 (WebCore::MediaElementAudioSourceNode::create):
2629 (WebCore::MediaElementAudioSourceNode::MediaElementAudioSourceNode):
2630 (WebCore::MediaElementAudioSourceNode::setFormat):
2631 (WebCore::MediaElementAudioSourceNode::process):
2632 Implement MediaElementAudioSourceNode::setFormat() so that we can
2633 properly setup a sample-rate converter and set the number of channels
2634 of the MediaElementAudioSourceNode output.
2635 * webaudio/MediaElementAudioSourceNode.h:
2637 2011-12-22 Chris Fleizach <cfleizach@apple.com>
2639 AX: WebKit should ignore ARIA role=presentation on focusable elements
2640 https://bugs.webkit.org/show_bug.cgi?id=75101
2642 Reviewed by Darin Adler.
2644 If an element is focusable, the presentational role must be ignored, lest the user not be able
2645 to interact with something important.
2647 Test: accessibility/presentational-elements-with-focus.html
2649 * accessibility/AccessibilityRenderObject.cpp:
2650 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
2651 (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
2652 (WebCore::AccessibilityRenderObject::inheritsPresentationalRole):
2654 2011-12-22 Anders Carlsson <andersca@apple.com>
2656 Use immediateScrollBy instead of immediateScrollTo where possible
2657 https://bugs.webkit.org/show_bug.cgi?id=75124
2659 Reviewed by Sam Weinig.
2661 Instead of computing the position to scroll to, just compute the delta and use scrollBy instead.
2663 * platform/mac/ScrollAnimatorMac.mm:
2664 (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
2665 (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
2667 2011-12-22 Anders Carlsson <andersca@apple.com>
2669 Remove a private ScrollAnimatorMac getter/setter and just update the member variable directly
2670 https://bugs.webkit.org/show_bug.cgi?id=75121
2672 Reviewed by Sam Weinig.
2674 * platform/mac/ScrollAnimatorMac.h:
2675 * platform/mac/ScrollAnimatorMac.mm:
2676 (WebCore::ScrollAnimatorMac::setIsActive):
2677 (WebCore::ScrollAnimatorMac::updateScrollerStyle):
2679 2011-12-22 Anders Carlsson <andersca@apple.com>
2681 Simplify ScrollAnimatorMac scrollByDelta functions
2682 https://bugs.webkit.org/show_bug.cgi?id=75120
2684 Reviewed by Sam Weinig.
2686 Merge immediateScrollByDeltaX and immediateScrollByDeltaY to a single function and rename it
2687 to immediateScrollBy. Also, rename immediateScrollToPoint to immediateScrollTo.
2689 * platform/mac/ScrollAnimatorMac.h:
2690 * platform/mac/ScrollAnimatorMac.mm:
2691 (WebCore::ScrollAnimatorMac::scrollToOffsetWithoutAnimation):
2692 (WebCore::ScrollAnimatorMac::immediateScrollTo):
2693 (WebCore::ScrollAnimatorMac::immediateScrollBy):
2694 (WebCore::ScrollAnimatorMac::immediateScrollToPointForScrollAnimation):
2695 (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
2696 (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
2698 2011-12-22 Anders Carlsson <andersca@apple.com>
2700 Make some ScrollAnimatorMac member functions private
2701 https://bugs.webkit.org/show_bug.cgi?id=75117
2703 Reviewed by Sam Weinig.
2705 Make virtual member functions and functions that are only called from ScrollAnimatorMac private.
2707 * platform/mac/ScrollAnimatorMac.h:
2709 2011-12-22 Anders Carlsson <andersca@apple.com>
2711 Move some member variables out of ScrollElasticityController
2712 https://bugs.webkit.org/show_bug.cgi?id=75115
2714 Reviewed by Adam Roben.
2716 Move a couple of member variables that aren't related to rubberbanding out from
2717 ScrollElasticityController and back into ScrollAnimatorMac and remove now unneeded
2718 ScrollElasticityControllerClient member functions as well.
2720 * platform/mac/ScrollAnimatorMac.h:
2721 * platform/mac/ScrollAnimatorMac.mm:
2722 (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
2723 (WebCore::ScrollAnimatorMac::handleWheelEvent):
2724 (WebCore::ScrollAnimatorMac::beginScrollGesture):
2725 * platform/mac/ScrollElasticityController.h:
2726 * platform/mac/ScrollElasticityController.mm:
2727 (WebCore::ScrollElasticityController::ScrollElasticityController):
2728 (WebCore::ScrollElasticityController::beginScrollGesture):
2730 2011-12-22 Balazs Kelemen <kbalazs@webkit.org>
2732 Fix debug build with assertions disabled
2733 https://bugs.webkit.org/show_bug.cgi?id=75075
2735 Reviewed by Darin Adler.
2737 Check whether assertions are disabled instead of NDEBUG
2738 where appropriate to avoid "defined but not used" warnings.
2740 No change in behaviour so no new tests.
2742 * loader/cache/MemoryCache.cpp:
2743 (WebCore::MemoryCache::insertInLRUList):
2744 (WebCore::MemoryCache::removeFromLiveDecodedResourcesList):
2745 (WebCore::MemoryCache::insertInLiveDecodedResourcesList):
2746 * rendering/RenderBlock.cpp:
2747 (WebCore::RenderBlock::layoutBlockChild):
2748 * rendering/RenderLayer.cpp:
2749 (WebCore::RenderLayer::updateLayerPositions):
2751 2011-12-22 Anders Carlsson <andersca@apple.com>
2753 Get rid of didStartAnimatedScroll and didCompleteAnimatedScroll
2754 https://bugs.webkit.org/show_bug.cgi?id=75107
2756 Reviewed by Adam Roben.
2758 This is another step towards removing the display throttling in WebKit2.
2760 * page/ChromeClient.h:
2761 * page/FrameView.cpp:
2763 * platform/ScrollableArea.h:
2764 * platform/mac/ScrollAnimatorMac.mm:
2765 (WebCore::ScrollAnimatorMac::scroll):
2766 (WebCore::ScrollAnimatorMac::immediateScrollToPointForScrollAnimation):
2768 2011-12-22 Anders Carlsson <andersca@apple.com>
2770 Remove didStartRubberBand and didCompleteRubberBand callbacks
2771 https://bugs.webkit.org/show_bug.cgi?id=75102
2773 Reviewed by Adam Roben.
2775 The code to do display throttling in WebKit2 is complex and doesn't really help us except
2776 on an old benchmark that's no longer representative of real-world behavior; let's rip it out instead.
2778 * page/ChromeClient.h:
2779 * page/FrameView.cpp:
2781 * platform/ScrollView.cpp:
2782 * platform/ScrollView.h:
2783 * platform/ScrollableArea.h:
2784 * platform/mac/ScrollAnimatorMac.mm:
2785 (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
2786 * rendering/RenderLayer.cpp:
2787 * rendering/RenderLayer.h:
2789 2011-12-22 Vsevolod Vlasov <vsevik@chromium.org>
2791 Web Inspector: [Regression] Network item view is not displayed.
2792 https://bugs.webkit.org/show_bug.cgi?id=75100
2794 Not reviewed, one line css fix.
2796 * inspector/front-end/networkPanel.css:
2797 (.network-item-view.visible):
2799 2011-12-22 Andreas Kling <kling@webkit.org>
2801 NamedNodeMap: Get rid of declCount().
2802 <http://webkit.org/b/74948>
2804 Reviewed by Darin Adler.
2806 We already have the number of mapped attribute declarations in the map
2807 stored in m_mappedAttributeCount (updated by declAdded()/declRemoved())
2808 so compare that in mappedMapsEquivalent() to skip one loop over the map.
2810 * dom/NamedNodeMap.cpp:
2811 (WebCore::NamedNodeMap::mappedMapsEquivalent):
2812 * dom/NamedNodeMap.h:
2814 2011-12-22 Andreas Kling <kling@webkit.org>
2816 SnowLeopard crashes due to thread-unsafe EventListenerIterator ASSERTs
2817 <http://webkit.org/b/74260>
2819 Reviewed by Darin Adler.
2821 Guard EventListenerMap::m_activeIteratorCount with a mutex.
2823 * dom/EventListenerMap.cpp:
2824 (WebCore::activeIteratorCountMutex):
2825 (WebCore::EventListenerMap::assertNoActiveIterators):
2826 (WebCore::EventListenerMap::clear):
2827 (WebCore::EventListenerMap::add):
2828 (WebCore::EventListenerMap::remove):
2829 (WebCore::EventListenerMap::find):
2830 (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
2831 (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
2832 (WebCore::EventListenerIterator::EventListenerIterator):
2833 (WebCore::EventListenerIterator::~EventListenerIterator):
2834 * dom/EventListenerMap.h:
2835 (WebCore::EventListenerMap::assertNoActiveIterators):
2837 2011-12-22 Vsevolod Vlasov <vsevik@chromium.org>
2839 Web Inspector: TabbedPane should support closeable tabs, hiding tabs into drop down menu.
2840 https://bugs.webkit.org/show_bug.cgi?id=75085
2842 Reviewed by Pavel Feldman.
2844 Test: inspector/tabbed-pane-tabs-to-show.html
2847 * WebCore.vcproj/WebCore.vcproj:
2848 * inspector/front-end/ScriptsNavigator.js:
2849 (WebInspector.ScriptsNavigator):
2850 * inspector/front-end/TabbedPane.js:
2851 (WebInspector.TabbedPane):
2852 (WebInspector.TabbedPane.prototype.set shrinkableTabs):
2853 (WebInspector.TabbedPane.prototype.set closeableTabs):
2854 (WebInspector.TabbedPane.prototype.appendTab):
2855 (WebInspector.TabbedPane.prototype.closeTab):
2856 (WebInspector.TabbedPane.prototype.selectTab):
2857 (WebInspector.TabbedPane.prototype.onResize):
2858 (WebInspector.TabbedPane.prototype._updateTabElements):
2859 (WebInspector.TabbedPane.prototype._showTabElement):
2860 (WebInspector.TabbedPane.prototype._hideTabElement):
2861 (WebInspector.TabbedPane.prototype._createDropDownButton):
2862 (WebInspector.TabbedPane.prototype._updateTabsDropDown):
2863 (WebInspector.TabbedPane.prototype._populateDropDownFromIndex):
2864 (WebInspector.TabbedPane.prototype._tabsSelectChanged):
2865 (WebInspector.TabbedPane.prototype._measureDropDownButton):
2866 (WebInspector.TabbedPane.prototype._updateWidths):
2867 (WebInspector.TabbedPane.prototype._calculateMaxWidth.var):
2868 (WebInspector.TabbedPane.prototype._calculateMaxWidth):
2869 (WebInspector.TabbedPane.prototype._hideCurrentTab):
2870 (WebInspector.TabbedPaneTab):
2871 (WebInspector.TabbedPaneTab.prototype.get id):
2872 (WebInspector.TabbedPaneTab.prototype.get tabElement):
2873 (WebInspector.TabbedPaneTab.prototype.get measuredWidth):
2874 (WebInspector.TabbedPaneTab.prototype.get width):
2875 (WebInspector.TabbedPaneTab.prototype.set width):
2876 (WebInspector.TabbedPaneTab.prototype._createTabElement):
2877 (WebInspector.TabbedPaneTab.prototype._measure):
2878 (WebInspector.TabbedPaneTab.prototype._tabSelected):
2879 (WebInspector.TabbedPaneTab.prototype._tabClosed):
2880 * inspector/front-end/WebKit.qrc:
2881 * inspector/front-end/inspector.css:
2882 * inspector/front-end/scriptsPanel.css:
2883 (#scripts-navigator-tabbed-pane .tabbed-pane-header-contents):
2884 * inspector/front-end/tabbedPane.css: Added.
2886 2011-12-22 Chris Fleizach <cfleizach@apple.com>
2888 AX: attributed strings do not include AXHeading information when a link is contained within the heading
2889 https://bugs.webkit.org/show_bug.cgi?id=75059
2891 Reviewed by Darin Adler.
2893 An attributed string should contain the heading level of an ancestor node if it exists.
2894 This change allows the ancestor to be higher up in the hierarchy than just the direct parent.
2896 Test: platform/mac/accessibility/heading-and-link-attributed-string.html
2898 * accessibility/mac/WebAccessibilityObjectWrapper.mm:
2899 (AXAttributeStringSetHeadingLevel):
2901 2011-12-22 Chris Fleizach <cfleizach@apple.com>
2903 AX: Title attribute should not be used in AXTitle
2904 https://bugs.webkit.org/show_bug.cgi?id=75027
2906 Reviewed by Darin Adler.
2908 Accessibility has been incorrectly exposing the title attribute through AXTitle. The title
2909 attribute better corresponds with a help tag for accessibility clients.
2911 Test: platform/mac/accessibility/title-attribute-not-used-as-axtitle.html
2913 * accessibility/AccessibilityRenderObject.cpp:
2914 (WebCore::AccessibilityRenderObject::title):
2915 Don't use the title attribute.
2916 (WebCore::AccessibilityRenderObject::exposesTitleUIElement):
2917 Change the semantics around when a checkbox or radio button combines it's title ui element. The change
2918 makes it so that we will expose the title ui element when the control already has a label. Otherwise
2919 the title ui element is hidden, and it's text is used as the AXTitle for the control.
2920 (WebCore::AccessibilityRenderObject::titleUIElement):
2921 Change this method so it always returns the title ui element, and then leave it up to exposesTitleUIElement
2922 to determine whether it should be shown.
2923 * accessibility/AccessibilityTableCell.h:
2924 (WebCore::AccessibilityTableCell::exposesTitleUIElement):
2925 There's no special logic for table cells that have title ui elements, and we don't want to use
2926 the logic in AccessibilityRenderObject, hence the override here.
2927 * accessibility/mac/WebAccessibilityObjectWrapper.mm:
2928 (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
2930 2011-12-22 Chris Fleizach <cfleizach@apple.com>
2932 AX: aria-describedby should not be part of AXDescription (should be a part of AXHelp)
2933 https://bugs.webkit.org/show_bug.cgi?id=75052
2935 Reviewed by Darin Adler.
2937 According to the ARIA spec, aria-describedby is a more detailed description that is akin to help, rather
2938 than a description describing the actual object.
2940 As such, it makes more sense for this attribute to be exposed under help text.
2942 * accessibility/AccessibilityRenderObject.cpp:
2943 (WebCore::AccessibilityRenderObject::helpText):
2944 (WebCore::AccessibilityRenderObject::ariaAccessibilityDescription):
2946 2011-12-22 Mariusz Grzegorczyk <mariusz.g@samsung.com>
2948 [EFL] Missing plugins support for efl port
2949 https://bugs.webkit.org/show_bug.cgi?id=44505
2951 Reviewed by Anders Carlsson.
2953 Basic functionality of plugins for efl port.
2955 Template version, so no new tests are needed.
2957 * PlatformEfl.cmake:
2958 * plugins/PluginView.h:
2959 * plugins/efl/PluginDataEfl.cpp: Added. Copied from plugins/gtk/PluginDataGtk.cpp.
2960 (WebCore::PluginData::initPlugins): Fill mime/description/extension maps for plugins.
2961 (WebCore::PluginData::refresh): Refresh plugin's database.
2962 * plugins/efl/PluginPackageEfl.cpp: Added. Copied from plugins/gtk/PluginPackageGtk.cpp.
2963 (WebCore::PluginPackage::fetchInfo): Get info from plugin's library about name and mime supported.
2964 (WebCore::PluginPackage::NPVersion):
2965 (WebCore::PluginPackage::load): Load plugin.
2966 * plugins/efl/PluginViewEfl.cpp: Added. Copied from plugins/gtk/PluginViewGtk.cpp.
2967 (WebCore::PluginView::dispatchNPEvent):
2968 (WebCore::PluginView::handleFocusInEvent):
2969 (WebCore::PluginView::handleFocusOutEvent):
2970 (WebCore::PluginView::handleKeyboardEvent):
2971 (WebCore::PluginView::handleMouseEvent):
2972 (WebCore::PluginView::updatePluginWidget):
2973 (WebCore::PluginView::setFocus):
2974 (WebCore::PluginView::show):
2975 (WebCore::PluginView::hide):
2976 (WebCore::PluginView::paint):
2977 (WebCore::PluginView::setParent):
2978 (WebCore::PluginView::setNPWindowRect):
2979 (WebCore::PluginView::setNPWindowIfNeeded):
2980 (WebCore::PluginView::setParentVisible):
2981 (WebCore::PluginView::handlePostReadFile):
2982 (WebCore::PluginView::platformGetValueStatic):
2983 (WebCore::PluginView::platformGetValue):
2984 (WebCore::PluginView::invalidateRect):
2985 (WebCore::PluginView::invalidateRegion):
2986 (WebCore::PluginView::forceRedraw):
2987 (WebCore::PluginView::platformStart):
2988 (WebCore::PluginView::platformDestroy):
2990 2011-12-22 Pavel Podivilov <podivilov@chromium.org>
2992 Web Inspector: add "install source map" to JS source frame context menu.
2993 https://bugs.webkit.org/show_bug.cgi?id=74181
2995 Reviewed by Pavel Feldman.
2997 Add "install source map" to source frame context menu when source map url is auto detected.
2999 * English.lproj/localizedStrings.js:
3000 * inspector/front-end/CompilerSourceMapping.js:
3001 (WebInspector.ClosureCompilerSourceMapping.prototype.load):
3002 (WebInspector.ClosureCompilerSourceMapping.prototype._parseSections):
3003 * inspector/front-end/DebuggerPresentationModel.js:
3004 (WebInspector.DebuggerPresentationModel.prototype.installCompilerSourceMapping):
3005 * inspector/front-end/JavaScriptSourceFrame.js:
3006 (WebInspector.JavaScriptSourceFrame.prototype.populateTextAreaContextMenu):
3007 (WebInspector.JavaScriptSourceFrame.prototype.cancelEditing):
3008 * inspector/front-end/RawSourceCode.js:
3009 (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent.didFormatContent):
3010 (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent):
3011 (WebInspector.RawSourceCode.prototype._createSourceMapping):
3012 (WebInspector.RawSourceCode.prototype._createUISourceCode):
3013 * inspector/front-end/UISourceCode.js:
3014 (WebInspector.UISourceCode):
3016 2011-12-22 Branimir Lambov <blambov@google.com>
3018 SVG: "filter" race condition may prevent SVG elements from being re-drawn
3019 https://bugs.webkit.org/show_bug.cgi?id=53088
3021 Reviewed by Nikolas Zimmermann.
3023 Added code to explicitly invalidate data cached by filters applied to
3024 an invalidated object or one of its parents.
3026 Test: svg/filters/filter-refresh.svg
3028 * rendering/svg/RenderSVGResource.cpp:
3029 (WebCore::RenderSVGResource::removeFromFilterCache):
3030 (WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation):
3031 Added code to invalidate any filters applied to any of the parents.
3032 * rendering/svg/RenderSVGResource.h:
3033 * rendering/svg/RenderSVGResourceContainer.cpp:
3034 (WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation):
3035 Replaced a duplicate of RenderSVGResource::
3036 markForLayoutAndParentResourceInvalidation with a call to the method.
3037 * rendering/svg/SVGResourcesCache.cpp:
3038 (WebCore::SVGResourcesCache::clientLayoutChanged):
3039 Removed filter invalidation code as this function would not be called if
3040 the filter isn't already invalidated.
3041 (WebCore::SVGResourcesCache::clientStyleChanged):
3042 (WebCore::SVGResourcesCache::clientUpdatedFromElement):
3043 Replaced filter invalidation with a markForLayoutAndParentResourceInvalidation
3044 call as all filters in the ancestor chain need to be invalidated.
3046 2011-12-22 Leo Yang <leo.yang@torchmobile.com.cn>
3048 [BlackBerry] Upstream the BlackBerry change to ResourceHandle.h
3049 https://bugs.webkit.org/show_bug.cgi?id=75061
3051 Reviewed by George Staikos.
3053 No functionality change to the existing code, no new tests.
3055 * platform/network/ResourceHandle.h:
3057 2011-12-22 Alexandru Chiculita <achicu@adobe.com>
3059 [CSS Shaders] Follow up bug to fix issues mentioned in comment 23 from bug 73317
3060 https://bugs.webkit.org/show_bug.cgi?id=74840
3062 Some comments were added on bug 73317 after the patch was reviewed and committed.
3063 This patch is fixing those issues, mostly about coding style and some missing comments.
3065 The initial patch had no explanation about the feature in the ChangeLog, so I'm including the description
3068 CSS Shaders allow a designer to use a pair of WebGL vertex and fragment shaders to alter the final
3069 rendering of a specific element. The navigator will render the element inside a texture and map it
3070 to a mesh. The mesh is formed by equal sized quads, that depending on the mesh style, attached or detached,
3071 can be stitched or separated. The number of quads can be changed from CSS.
3073 Usually the vertex shader is changing the vertices of the mesh, while the fragment shader affects only the color
3074 that is rendered to screen (for example lighting effects).
3076 More info about CSS Shaders can be found in the specification
3077 https://dvcs.w3.org/hg/FXTF/raw-file/tip/custom/index.html
3079 Also a good tutorial is published here
3080 http://www.adobe.com/devnet/html5/articles/css-shaders.html
3082 Initially we are using the software filter effects pipeline. It uploads the image to the GPU, applies
3083 the shaders, reads it back to CPU and continues the rendering. The advantage of using the software pipeline is that
3084 it can be enabled on all the platforms that have WebGL support. The obvious disadvantage is performance: copies from CPU
3085 memory to GPU memory and the CPU will need to wait the GPU to finish before it could continue. In following
3086 patches the shaders will be integrated in the hardware accelerated pipeline, so that no copies and, most
3087 important, no waits will be required.
3089 Also, the new syntax counts total number of the lines and the columns, not just the
3090 additional lines and columns, so the minimum accepted and the default value is now 1 by 1.
3092 Reviewed by Nikolas Zimmermann.
3094 Some tests were updated for the default mesh size change.
3096 * css/CSSParser.cpp:
3097 Only accept non-zero positive int values for mesh sizes.
3099 (WebCore::CSSParser::parseCustomFilter):
3100 * css/CSSStyleSelector.cpp:
3101 Updated the default mesh size to be 1 column with 1 line.
3103 (WebCore::CSSStyleSelector::createCustomFilterOperation):
3104 * loader/cache/CachedShader.cpp:
3105 (WebCore::CachedShader::shaderString):
3106 Corrected the CachedShader to use a StringBuilder. Also there was an incorrect
3107 cast to bool, which resulted from a copy/paste from CachedScript which still has
3110 (WebCore::CachedShader::data):
3111 * loader/cache/CachedShader.h:
3112 * platform/graphics/filters/CustomFilterMesh.cpp:
3113 (WebCore::MeshGenerator::MeshGenerator):
3114 (WebCore::MeshGenerator::verticesCount):
3115 (WebCore::MeshGenerator::generateAttachedMesh):
3116 (WebCore::MeshGenerator::generateDetachedMesh):
3117 (WebCore::CustomFilterMesh::CustomFilterMesh):
3118 * platform/graphics/filters/CustomFilterMesh.h:
3119 (WebCore::CustomFilterMesh::create):
3120 * platform/graphics/filters/CustomFilterShader.cpp:
3121 (WebCore::CustomFilterShader::CustomFilterShader):
3122 Exploded the body of the constructor into smaller helper functions.
3124 (WebCore::CustomFilterShader::compileShader):
3125 (WebCore::CustomFilterShader::linkProgram):
3126 (WebCore::CustomFilterShader::initializeParameterLocations):
3127 * platform/graphics/filters/CustomFilterShader.h:
3128 * platform/graphics/filters/FECustomFilter.cpp:
3129 (WebCore::orthogonalProjectionMatrix):
3130 Passing a TransformationMatrix by reference to be filled with the result matrix, instead
3131 of returning it by value. Also changed the name of the method.
3133 (WebCore::FECustomFilter::FECustomFilter):
3134 (WebCore::FECustomFilter::platformApplySoftware):
3135 Created some helper functions to make this method shorter.
3137 (WebCore::FECustomFilter::initializeContext):
3138 (WebCore::FECustomFilter::resizeContext):
3139 (WebCore::FECustomFilter::bindVertexAttribute):
3140 (WebCore::FECustomFilter::bindProgramAndBuffers):
3141 * platform/graphics/filters/FECustomFilter.h:
3143 2011-12-12 Pavel Podivilov <podivilov@chromium.org>
3145 Web Inspector: fix source map url resolving.
3146 https://bugs.webkit.org/show_bug.cgi?id=74305
3148 Reviewed by Pavel Feldman.
3150 Also fix the bug with repeated source urls in mapping sections.
3152 * inspector/front-end/CompilerSourceMapping.js:
3153 (WebInspector.ClosureCompilerSourceMapping):
3154 (WebInspector.ClosureCompilerSourceMapping.prototype.sources):
3155 (WebInspector.ClosureCompilerSourceMapping.prototype._parseMap):
3156 (WebInspector.ClosureCompilerSourceMapping.prototype._resolveSourceMapURL):
3157 * inspector/front-end/DebuggerPresentationModel.js:
3158 (WebInspector.DebuggerPresentationModel.prototype.installCompilerSourceMapping):
3159 * inspector/front-end/utilities.js:
3160 (String.prototype.asParsedURL):
3162 2011-12-09 Pavel Podivilov <podivilov@chromium.org>
3164 Web Inspector: auto detect source map url.
3165 https://bugs.webkit.org/show_bug.cgi?id=74088
3167 Reviewed by Pavel Feldman.
3169 Check to see if "X-SourceMap" HTTP response header was sent with script resource.
3170 Header value will be used as auto suggestion for source map url in UI.
3172 * inspector/Inspector.json:
3173 * inspector/InspectorDebuggerAgent.cpp:
3174 (WebCore::InspectorDebuggerAgent::sourceMapURLForScript):
3175 (WebCore::InspectorDebuggerAgent::didParseSource):
3176 * inspector/InspectorDebuggerAgent.h:
3177 * inspector/front-end/DebuggerModel.js:
3178 (WebInspector.DebuggerModel.prototype._parsedScriptSource):
3179 (WebInspector.DebuggerDispatcher.prototype.scriptParsed):
3180 * inspector/front-end/RawSourceCode.js:
3181 (WebInspector.RawSourceCode):
3182 * inspector/front-end/Script.js:
3183 (WebInspector.Script):
3185 2011-12-22 Kentaro Hara <haraken@chromium.org>
3187 Change the build flow of AppleWebKit to use the [Supplemental] IDL
3188 https://bugs.webkit.org/show_bug.cgi?id=74900
3190 Reviewed by Adam Barth.
3192 This is the final step for bug 74599. This patch changes the build flow
3193 of DerivedSources.make as follows, and thus enable the [Supplemental] IDL.
3195 - Previous build flow:
3196 foreach $idl (all IDL files) {
3197 generate-bindings.pl depends on $idl;
3198 generate-bindings.pl reads $idl;
3199 generate-bindings.pl generates .h and .cpp files for $idl;
3202 - New build flow (See the discussions in bug 72138 for more details):
3203 resolve-supplemental.pl depends on all IDL files;
3204 resolve-supplemental.pl reads all IDL files;
3205 resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
3206 resolve-supplemental.pl outputs supplemental_dependency.tmp;
3207 foreach $idl (all IDL files) {
3208 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
3209 generate-bindings.pl reads $idl;
3210 generate-bindings.pl reads supplemental_dependency.tmp;
3211 generate-bindings.pl generates .h and .cpp files for $idl,
3212 including all attributes in the IDL files that are implementing $idl;
3215 Tests: Confirm that build succeeds.
3216 http/tests/websocket/tests/*
3218 * DerivedSources.make: Described the build flow as described above.
3219 Added a list of IDL files. Instead, removed a list of JS*.h and JS*.cpp
3220 which are generated by the IDL files.
3222 2011-12-22 Eric Uhrhane <ericu@chromium.org>
3224 [filesystem] Remove old filesystem naming restrictions
3225 https://bugs.webkit.org/show_bug.cgi?id=62813
3227 Reviewed by David Levin.
3229 * fileapi/DOMFilePath.cpp:
3230 (WebCore::DOMFilePath::isValidPath): Replace strict restrictions with
3231 minimal safety [no files named "." or "..", no use of '\\' or '\0' in
3232 paths, no use of '/' in file names].
3234 2011-12-22 Greg Billock <gbillock@google.com>
3236 [Coverity] Address use-after-free report in MemoryCache
3237 https://bugs.webkit.org/show_bug.cgi?id=74970
3239 Reviewed by Eric Seidel.
3241 * loader/cache/MemoryCache.cpp:
3242 (WebCore::MemoryCache::revalidationSucceeded):
3244 2011-12-22 Tom Sepez <tsepez@chromium.org>
3246 XSLT-created HTML documents do not inherit first party for cookies from originally loaded XML.
3247 https://bugs.webkit.org/show_bug.cgi?id=74757
3249 Reviewed by Alexey Proskuryakov.
3251 Tests: http/tests/security/cookies/first-party-cookie-allow-xslt.xml
3252 http/tests/security/cookies/third-party-cookie-blocking-xslt.xml
3254 * xml/XSLTProcessor.cpp:
3255 (WebCore::XSLTProcessor::createDocumentFromSource):
3257 2011-12-22 Daniel Jalkut <jalkut@red-sweater.com>
3259 WebKit editing throws exception when monochrome color dragged onto text
3260 https://bugs.webkit.org/show_bug.cgi?id=74775
3262 Reviewed by Ryosuke Niwa.
3264 Handle non-RGB colorspace colors in the Mac platform drag manager. Fixes NSException thrown
3265 when dragging monochrome colors to contentEditable regions.
3267 Manual test added to trunk/ManualTests/drag-color-to-contenteditable.html
3269 * platform/mac/DragDataMac.mm:
3270 (WebCore::DragData::asColor):
3272 2011-12-22 Peter Rybin <peter.rybin@gmail.com>
3274 Web Inspector: CodeGeneratorInspector.py: generate anonymous types.
3275 https://bugs.webkit.org/show_bug.cgi?id=74890
3277 Reviewed by Yury Semikhatsky.
3279 Anonymous types are generated. Forward declarations are generated.
3281 In general it now generates C++ types for anonymous object types from
3282 JSON. It takes a name from the type declaration site, usually a
3283 parameter name. This all is explained in comments in generated file. Also
3284 all generated types now refer to other generated types in setter
3285 methods -- but this is commented out in generated code for now. All
3286 necessary forward declarations are also added. Anonymous enums are
3287 generated, but they are in comments too, because we didn't have
3288 solution about form the enums should have in C++ API.
3291 The change reorganizes type bindings — a polymorphous "code generator"
3292 object is factored out from binding.
3293 A helper class Writer is added to allow generating code with ajustable
3294 indentations and to support insertion points where additional code can
3295 be inserted retroactively.
3296 ForwardListener class is used for preparing necessary forward
3298 AdHocTypeContext conception is a speculative abstract class that is
3299 needed wherever anonymous type can emerge.
3301 * inspector/CodeGeneratorInspector.py:
3302 (fix_type_name.Result.output_comment):
3306 (Writer.newline_multiline):
3307 (Writer.append_multiline):
3308 (Writer.get_indented):
3310 (Writer.insert_writer):
3311 (TypeBindings.create_named_type_declaration.Helper.write_doc):
3312 (TypeBindings.create_named_type_declaration.Helper):
3313 (TypeBindings.create_named_type_declaration.Helper.add_to_forward_listener):
3314 (TypeBindings.create_named_type_declaration):
3315 (TypeBindings.create_ad_hoc_type_declaration.Helper.write_doc):
3316 (TypeBindings.create_ad_hoc_type_declaration.Helper):
3317 (TypeBindings.create_ad_hoc_type_declaration.Helper.add_to_forward_listener):
3318 (TypeBindings.create_ad_hoc_type_declaration):
3319 (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
3320 (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator):
3321 (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.register_use):
3322 (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator):
3323 (TypeBindings.create_type_declaration_.PlainString.get_code_generator.CodeGenerator.generate_type_builder.String):
3324 (TypeBindings.create_type_declaration_.PlainString.get_code_generator.CodeGenerator.generate_type_builder):
3325 (TypeBindings.create_type_declaration_.PlainString.get_code_generator.CodeGenerator):
3326 (TypeBindings.create_type_declaration_.PlainString.get_code_generator.CodeGenerator.register_use):
3327 (TypeBindings.create_type_declaration_.PlainString.get_code_generator):
3328 (TypeBindings.create_type_declaration_.PlainString.get_in_c_type_text.name):
3329 (TypeBindings.create_type_declaration_.PlainString):
3330 (TypeBindings.create_type_declaration_):
3331 (TypeBindings.create_type_declaration_.ClassBinding.get_code_generator):
3332 (TypeBindings.create_type_declaration_.ClassBinding.get_code_generator.CodeGenerator):
3333 (TypeBindings.create_type_declaration_.ClassBinding.get_code_generator.CodeGenerator.generate_type_builder):
3334 (AdHocTypeContextImpl.__init__):
3335 (AdHocTypeContextImpl.get_type_name_fix.NameFix):
3336 (AdHocTypeContextImpl.get_type_name_fix.NameFix.output_comment):
3337 (AdHocTypeContextImpl.get_type_name_fix):
3338 (AdHocTypeContextImpl):
3339 (AdHocTypeContextImpl.call_generate_type_builder):
3340 (generate_forward_declaration):
3342 (get_in_c_type_text):
3343 (reduce_to_raw_type):
3344 (PlainObjectBinding.get_code_generator):
3345 (CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix):
3346 (CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix.output_comment):
3347 (CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix):
3348 (CodeGenerator.generate_type_builder.AdHocTypeContext):
3349 (CodeGenerator.generate_type_builder.AdHocTypeContext.call_generate_type_builder):
3350 (CodeGenerator.generate_type_builder):
3352 (CodeGenerator.register_use):
3353 (RawTypesBinding.get_code_generator):
3354 (RawTypesBinding.get_in_c_type_text):
3356 (RawTypesBinding.reduce_to_raw_type):
3357 (TypeData.__init__):
3358 (TypeData.get_json_type):
3359 (resolve_param_type):
3361 (Generator.process_event.NoOpForwardListener):
3362 (Generator.process_event.NoOpForwardListener.add_type_data):
3363 (Generator.process_event.AdHocTypeContext.get_type_name_fix.NameFix):
3364 (Generator.process_event.AdHocTypeContext.get_type_name_fix.NameFix.output_comment):
3365 (Generator.process_event.AdHocTypeContext.get_type_name_fix):
3366 (Generator.process_event.AdHocTypeContext):
3367 (Generator.process_event.AdHocTypeContext.call_generate_type_builder):
3368 (Generator.process_event):
3369 (Generator.process_types.ForwardListener):
3370 (Generator.process_types.ForwardListener.add_type_data):
3371 (Generator.process_types.generate_all_domains_code.namespace_lazy_generator):
3372 (Generator.process_types.generate_all_domains_code):
3373 (Generator.process_types.call_type_builder):
3374 (Generator.process_types.generate_forward_callback):
3376 (Generator.process_types):
3377 (flatten_list.fill_recursive):
3380 2011-12-22 Hans Muller <hmuller@adobe.com>
3382 Onloadend event is not supported in XMLHttpRequest
3383 https://bugs.webkit.org/show_bug.cgi?id=40952
3385 Reviewed by Julien Chaffraix.
3387 Added support for the loadend ProgressEvent to XMLHttpRequest and XMLHttpRequestUpload.
3388 A new method, dispatchEventAndLoadEnd(), was added to XMLHttpRequestProgressEventThrottle
3389 and XMLHttpRequestUpload to foolproof the common case of dispatching a load, abort,
3390 or error event followed by a loadend event.
3392 Tests: http/tests/xmlhttprequest/onloadend-event-after-abort.html
3393 http/tests/xmlhttprequest/onloadend-event-after-error.html
3394 http/tests/xmlhttprequest/onloadend-event-after-load.html
3395 http/tests/xmlhttprequest/onloadend-event-after-sync-requests.html
3396 http/tests/xmlhttprequest/upload-onloadend-event-after-abort.html
3397 http/tests/xmlhttprequest/upload-onloadend-event-after-load.html
3398 http/tests/xmlhttprequest/upload-onloadend-event-after-sync-requests.html
3400 * xml/XMLHttpRequest.cpp:
3401 (WebCore::XMLHttpRequest::callReadyStateChangeListener):
3402 (WebCore::XMLHttpRequest::abort):
3403 (WebCore::XMLHttpRequest::networkError):
3404 (WebCore::XMLHttpRequest::abortError):
3405 (WebCore::XMLHttpRequest::didSendData):
3406 * xml/XMLHttpRequest.h:
3407 * xml/XMLHttpRequest.idl:
3408 * xml/XMLHttpRequestProgressEventThrottle.cpp:
3409 (WebCore::XMLHttpRequestProgressEventThrottle::dispatchEventAndLoadEnd):
3410 * xml/XMLHttpRequestProgressEventThrottle.h:
3411 * xml/XMLHttpRequestUpload.cpp:
3412 (WebCore::XMLHttpRequestUpload::dispatchEventAndLoadEnd):
3413 * xml/XMLHttpRequestUpload.h:
3414 * xml/XMLHttpRequestUpload.idl:
3416 2011-12-22 Mark Pilgrim <pilgrim@chromium.org>
3418 [FileSystem API] Entry.getMetadata successCallback is required
3419 https://bugs.webkit.org/show_bug.cgi?id=69638
3421 Reviewed by Eric Seidel.
3423 Test: fast/filesystem/simple-required-arguments-getmetadata.html
3425 * fileapi/Entry.idl: remove [Optional] flag from successCallback parameter
3427 2011-12-22 Ilya Tikhonovsky <loislo@chromium.org>
3429 Unreviewed, rolling out r103405.
3430 http://trac.webkit.org/changeset/103405
3431 https://bugs.webkit.org/show_bug.cgi?id=74088
3433 it broke WorkerDevToolsSanityTest.InspectSharedWorker
3435 * inspector/Inspector.json:
3436 * inspector/InspectorDebuggerAgent.cpp:
3437 (WebCore::InspectorDebuggerAgent::didParseSource):
3438 * inspector/InspectorDebuggerAgent.h:
3439 * inspector/front-end/DebuggerModel.js:
3440 (WebInspector.DebuggerModel.prototype._parsedScriptSource):
3441 (WebInspector.DebuggerDispatcher.prototype.scriptParsed):
3442 * inspector/front-end/RawSourceCode.js:
3443 (WebInspector.RawSourceCode):
3444 * inspector/front-end/Script.js:
3445 (WebInspector.Script):
3446 (WebInspector.Script.prototype.searchInContent):
3448 2011-12-21 Darin Adler <darin@apple.com>
3450 Make ~CSSParserSelector use Vector<OwnPtr>
3451 https://bugs.webkit.org/show_bug.cgi?id=73782
3453 Reviewed by Alexey Proskuryakov.
3455 * css/CSSParserValues.cpp:
3456 (WebCore::CSSParserSelector::~CSSParserSelector): Use Vector<OwnPtr>
3457 so we don't have to call leakPtr or deleteAllValues.
3459 2011-12-21 Yosifumi Inoue <yosin@chromium.org>
3461 [Forms] Selection change by type-ahead doesn't fire 'change' event
3462 https://bugs.webkit.org/show_bug.cgi?id=74590
3464 Reviewed by Kent Tamura.
3466 This patch changes when onchange event fired in select element for:
3467 1 Fire onchange event for type ahead selection.
3468 2 Don't fire onchange event for Enter key. We've already fired onchange event for cursor key
3469 and type ahead selection. So, onchange for Enter key is redundant. This behavior is
3470 compatible to IE(9.0.8112.16421) and Opera(9.80) on Windows. FF(8.01) doesn't fire onchange
3471 by cursor key selection change and type ahead. FF requires Enter key press to fire onchange
3474 Test: fast/forms/select/menulist-type-ahead-find.html
3476 * html/HTMLSelectElement.cpp:
3477 (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Don't fire onchange event for Entry key.
3478 (WebCore::HTMLSelectElement::typeAheadFind): Add DispatchChangeEvent when
3479 calling selectOption method.
3481 2011-12-21 Darin Adler <darin@apple.com>
3483 Tweak and comment some transform-related code
3484 https://bugs.webkit.org/show_bug.cgi?id=68670
3486 Reviewed by Daniel Bates.
3488 * platform/mac/ScrollbarThemeMac.mm:
3489 (WebCore::ScrollbarThemeMac::paint): Added a FIXME about additional overhead paid here
3490 when the scale factor is 2x.
3491 * rendering/RenderBoxModelObject.cpp:
3492 (WebCore::RenderBoxModelObject::paintBoxShadow): Added a FIXME about this check possibly
3493 being wrong, and also changed the local vairable name so the check need not stretch over
3496 2011-12-21 Kent Tamura <tkent@chromium.org>
3498 Change the item type of Document::m_formElementsWithState from Element*
3499 to HTMLFormControlElementWithState*.
3500 https://bugs.webkit.org/show_bug.cgi?id=74998
3502 Reviewed by Andreas Kling.
3504 No new tests. Just refactoring.
3507 (WebCore::Document::formElementsState): Use HTMLFormControlElementWithState*.
3509 (WebCore::Document::registerFormElementWithState): Change the argument type.
3510 (WebCore::Document::unregisterFormElementWithState): ditto.
3511 (WebCore::Document::formElements): Renamed from getFormElements().
3513 Removed shouldSaveAndRestoreFormControlState(), saveFormControlState(),
3514 and restoreFormControlState() because they are not called for Element
3516 * html/HTMLFormControlElement.h:
3517 - Make formControlName() and formControlType() public.
3518 They are called from Document class.
3519 - Make shouldSaveAndRestoreFormControlState() public, and non-virtual.
3520 This is called from Document class, and no other classes override this.
3521 (WebCore::HTMLFormControlElementWithState::saveFormControlState):
3523 (WebCore::HTMLFormControlElementWithState::restoreFormControlState): ditto.
3524 * html/HTMLInputElement.cpp:
3525 (WebCore::HTMLInputElement::updateCheckedRadioButtons):
3526 Use HTMLFormControlElemen