1 2012-01-03 Adam Barth <abarth@webkit.org>
3 Fix assert when foster parenting self-closing elements
4 https://bugs.webkit.org/show_bug.cgi?id=75527
8 * html/parser/HTMLConstructionSite.cpp:
9 (WebCore::HTMLConstructionSite::fosterParent):
10 - We can't execute this task immediately because the code for
11 self-closing elements wants to set the self-closing flag.
12 Instead, we queue the task.
14 2012-01-03 Charles Wei <charles.wei@torchmobile.com.cn>
16 [BlackBerry] Need to support credentials in the URL
17 https://bugs.webkit.org/show_bug.cgi?id=75341
19 Reviewed by George Staikos.
21 No new tests required.
23 * platform/network/blackberry/NetworkJob.cpp:
24 (WebCore::NetworkJob::sendRequestWithCredentials):
26 2012-01-03 Noel Gordon <noel.gordon@gmail.com>
28 [chromium] Use data decoding swizzle for turbo JPEG grayscale images
29 https://bugs.webkit.org/show_bug.cgi?id=75189
31 Reviewed by Adam Barth.
33 No new tests. Covered by exiting tests, in particular for grayscale
34 images that were corrupted by earlier versions on libjpeg-turbo:
36 tables/mozilla/bugs/bug29314.html
37 tables/mozilla/bugs/bug13169.html
38 tables/mozilla/bugs/bug10565.html
39 tables/mozilla/bugs/bug11026.html
40 fast/repaint/backgroundSizeRepaint.html
41 fast/repaint/block-layout-inline-children-replaced.html
42 fast/repaint/clipped-relative.html
43 fast/repaint/selected-replaced.html
44 tables/mozilla/bugs/bug12908-1.html
46 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
47 (WebCore::JPEGImageReader::decode): Use a data decoding swizzle for
50 2012-01-03 Adam Barth <abarth@webkit.org>
52 Minor speed improvement in HTML parser
53 https://bugs.webkit.org/show_bug.cgi?id=75517
55 Reviewed by Eric Seidel.
57 This improves the html-parser.html benchmark by 0.3%. I don't think
58 that's actually anything to write home about, but this patch makes me
59 feel better about my life.
61 * html/parser/HTMLFormattingElementList.cpp:
62 (WebCore::HTMLFormattingElementList::tryToEnsureNoahsArkConditionQuickly):
64 2012-01-03 Kentaro Hara <haraken@chromium.org>
66 Remove temporary code that we've inserted to implement the [Supplemental] IDL incrementally
67 https://bugs.webkit.org/show_bug.cgi?id=75510
69 Reviewed by Adam Barth.
71 Now all build systems support the [Supplemental] IDL. This patch removes all
72 temporary code that we've inserted to implement the [Supplemental] IDL.
74 No tests. No change in behavior. Confirm that all builds pass.
76 * bindings/js/JSDOMWindowCustom.cpp:
77 * bindings/scripts/CodeGeneratorJS.pm:
79 * bindings/scripts/generate-bindings.pl:
80 * page/DOMWindow.idl: Removed all attributes with a temporal [Supplemented] IDL.
82 2012-01-03 Karl Koscher <supersat@chromium.org>
84 Give embedders a chance to handle postMessage calls
85 https://bugs.webkit.org/show_bug.cgi?id=73883
87 To support cross-process postMessage calls in Chromium (bug 73337), we need to intercept
88 postMessage calls to proxy windows. Originally we were just going to add a native event
89 listener on the Chromium side, but that required more changes to WebKit and was a bit of
90 a hack. See bug 73359 for a discuss about moving to this approach.
92 Reviewed by Adam Barth.
94 Test: platform/chromium/fast/events/intercept-postmessage.html
96 * loader/FrameLoaderClient.h:
97 (WebCore::FrameLoaderClient::willCheckAndDispatchPostMessage): new method to allow the
98 embedder to intercept postMessage calls
100 (WebCore::DOMWindow::postMessageTimerFired): add a call to
101 FrameLoaderClient::willCheckAndDispatchPostMessage
103 2012-01-03 Eric Penner <epenner@google.com>
105 [chromium] Prevent crashing due to NULL texture updater.
106 https://bugs.webkit.org/show_bug.cgi?id=75288
108 Reviewed by James Robinson.
110 * platform/graphics/chromium/ContentLayerChromium.cpp:
111 * platform/graphics/chromium/ContentLayerChromium.h:
112 * platform/graphics/chromium/ImageLayerChromium.cpp:
113 * platform/graphics/chromium/ImageLayerChromium.h:
115 2012-01-03 Shawn Singh <shawnsingh@chromium.org>
117 [chromium] CCLayerSorter accidentally reverses order of some layers.
118 https://bugs.webkit.org/show_bug.cgi?id=75046
120 Reviewed by James Robinson.
122 Unit test added to CCLayerSorterTest.cpp
124 Fixes two related bugs that were causing z-ordering problems in
125 layers when preserves3D triggers the need for layer sorting.
127 The first problem was that CCLayerSorter accidentally reversed the
128 order of layers when there was no sorting dependency between them.
130 The second problem was that zDiff had numerical precision problems
131 that forced sorting dependencies that were sometimes incorrect,
132 when the dependencies should not have existed.
134 * platform/graphics/chromium/cc/CCLayerSorter.cpp:
135 (WebCore::CCLayerSorter::checkOverlap):
136 (WebCore::CCLayerSorter::sort):
138 2012-01-03 Leo Yang <leo.yang@torchmobile.com.cn>
140 [BlackBerry] Add support of blob form data to the BlackBerry port
141 https://bugs.webkit.org/show_bug.cgi?id=75218
143 Pass FormDataElement::encodedBlob type of form data to the BlackBerry
144 platform request to support blob data and blob file range.
146 Reviewed by George Staikos.
148 The port can't be built now, no new tests so far.
150 * platform/network/blackberry/ResourceRequestBlackBerry.cpp:
151 (WebCore::ResourceRequest::initializePlatformRequest):
153 2012-01-03 Adam Barth <abarth@webkit.org>
155 Two null crashes in Treebuilder
156 https://bugs.webkit.org/show_bug.cgi?id=66101
158 Reviewed by Eric Seidel.
160 The underly issue with causing the crash is that we're re-entering the
161 tree builder. We've done a bunch of point fixes around tree builder
162 re-entrancy, but neither the implementation nor the specification are
163 really designed to handle re-entrancy.
165 Firefox avoids this problem by putting the parser on its own thread. I
166 don't think we're quite ready to do that yet (although we will
167 eventually, presumably, as computers become ever more parallel). The
168 approach in this patch is to queue up the DOM mutations and actually
169 perform them on a shallower stack. That's essentially the approach
170 we've used for executing <scripts>.
172 This patch queues up DOM modifications and executes them from a clean
173 call stack, stopping us from re-entering the tree builder. We might
174 need to experiment with exactly where to kick off the queue, but this
175 location seems reasonable and fixes the crash.
177 Test: fast/parser/re-enter-and-crash.html
179 * html/parser/HTMLConstructionSite.cpp:
180 (WebCore::executeTask):
181 - Add a helper function for actually executing a queue DOM
183 (WebCore::HTMLConstructionSite::attach):
184 - Instead of actually attaching the element to the DOM, this
185 function now queues the element for attachment. In a follow-up
186 patch, I plan to change this function to return void (and I'll
187 probably rename it to something that makes it clear that it only
188 queues the attachment).
189 (WebCore::HTMLConstructionSite::executeQueuedTasks):
190 (WebCore::HTMLConstructionSite::insertDoctype):
191 - Setting the compatmode from the Doctype requires the doctype to
192 actually be in the DOM, so we need to execute our queued tasks
193 synchronously. We can likely improve this function by passing
194 the Doctype element explicitly in a follow-up patch.
195 (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
196 (WebCore::HTMLConstructionSite::insertTextNode):
197 (WebCore::HTMLConstructionSite::findFosterSite):
198 (WebCore::HTMLConstructionSite::fosterParent):
199 * html/parser/HTMLConstructionSite.h:
200 (WebCore::HTMLConstructionSiteTask::HTMLConstructionSiteTask):
201 - Add a task object that holds on to the relevant elements. We
202 define some vector traits for this object to match the traits on
203 RefPtr (which make Vector operations faster by explaining that
204 this type is moveable without having to churn reference counts).
205 * html/parser/HTMLElementStack.cpp:
206 (WebCore::HTMLElementStack::pushCommon):
207 - We delay the "begin parsing" call until we actually attach the
208 element to the DOM. That splits the responsibility for calling
209 begin/finished, which is less than ideal, but I didn't see
211 * html/parser/HTMLTreeBuilder.cpp:
212 (WebCore::HTMLTreeBuilder::constructTreeFromAtomicToken):
213 - Kick off the queued mutations.
215 2012-01-03 Adam Barth <abarth@webkit.org>
217 view-source doesn't colorize </script> correctly
218 https://bugs.webkit.org/show_bug.cgi?id=62971
220 Reviewed by Eric Seidel.
222 The reason these tags weren't colorized correctly was because the
223 characters for the end tags where consumed by the tokenizer at the same
224 time as it consumed the text of the script tag. These characters are
225 buffered internally by the tokenizer because the tokenizer is searching
226 for "an appropriate end tag", which is "</script>" in this case.
228 I tried a number of different approaches to fixing this bug. The
229 approach in this patch adds an accessor to the tokenizer to read out
230 the buffered characters. This approach makes it easier for the
231 HTMLSourceTracker to get exactly the right value for these buffered
232 characters without having to do a complicated simulation of the
235 Tests: fast/frames/viewsource-plain-text-tags.html:
237 * html/parser/HTMLViewSourceParser.cpp:
238 (WebCore::HTMLViewSourceParser::pumpTokenizer):
239 * html/parser/HTMLDocumentParser.cpp:
240 (WebCore::HTMLDocumentParser::pumpTokenizer):
241 - Give the HTMLSourceTracker a pointer to the tokenizer so it can ask
242 for the buffered characters.
243 * html/parser/HTMLSourceTracker.cpp:
244 (WebCore::HTMLSourceTracker::start):
245 - The idea here is to treat characters buffered internally by the
246 tokenizer the same way we treat characters that were contained in a
247 previous segment of source. We copy them into our accumulation
248 buffer and adjust the token base offset to account for the extra
250 (WebCore::HTMLSourceTracker::end):
251 - Don't consier the character buffered by the tokenizer to be part of
252 the token we've just finished.
253 (WebCore::HTMLSourceTracker::sourceForToken):
254 - Remove the assumption that all of the m_previousSource is contained
255 in the source for the current token. Because we now understand
256 that the tokenizer can buffer some characters internally, we might
257 not exhaust the m_previousSource.
258 * html/parser/HTMLSourceTracker.h:
259 - Rename m_sourceFromPreviousSegments to m_previousSource and changed
260 to a SegementedString to avoid extra mallocs we keep appending tiny
262 - Rename m_source to m_currentSource to contrast nicely with
264 * html/parser/HTMLTokenizer.cpp:
265 (WebCore::HTMLTokenizer::flushBufferedEndTag):
266 (WebCore::HTMLTokenizer::nextToken):
267 - Previously, we cleared the temporary buffer lazily when we needed
268 to add new characters to it. Now we clear it eagerly so that it's
269 length tells us whether we're currently using it to store
271 - Previously, we weren't storing the character that we used to
272 terminate the appropriate end tag (e.g., the > in </script>)
273 because we didn't need to "unbuffer" that character into the
274 HTMLToken::appendToCharacter. Now, we do store that character in
275 the temporary buffer so that the HTMLSourceTracker can see that
277 (WebCore::HTMLTokenizer::bufferedCharacters):
278 * html/parser/HTMLTokenizer.h:
279 (WebCore::HTMLTokenizer::numberOfBufferedCharacters):
280 - Add accessor methods to copy out the buffered characters.
281 - Also, unrelated to the rest of this patch, I made the constructor
282 for HTMLTokenizer explicit because it takes only a single
283 paramater, per the style guide.
284 * platform/text/SegmentedString.cpp:
285 (WebCore::SegmentedString::clear):
286 - SegmentedString::clear wasn't clearing all of its state. I don't
287 think this issue was actually observable, but I noticed it when
288 working on this patch, so I fixed it.
290 2012-01-03 Benjamin Poulain <bpoulain@apple.com>
292 Exclude Mac's PlatformEventFactory from iOS
293 https://bugs.webkit.org/show_bug.cgi?id=75493
295 Reviewed by Sam Weinig.
297 Move PlatformEventFactory.(h|cpp) to PlatformEventFactoryMac(h|cpp) and exclude the file
300 * Configurations/WebCore.xcconfig: Also exclude EventHandlerMac for consistency.
301 * WebCore.xcodeproj/project.pbxproj:
302 * page/mac/EventHandlerMac.mm:
303 * platform/mac/PlatformEventFactoryMac.h: Renamed from Source/WebCore/platform/mac/PlatformEventFactory.h.
304 * platform/mac/PlatformEventFactoryMac.mm: Renamed from Source/WebCore/platform/mac/PlatformEventFactory.mm.
305 (WebCore::globalPoint):
306 (WebCore::globalPointForEvent):
307 (WebCore::pointForEvent):
308 (WebCore::mouseButtonForEvent):
309 (WebCore::mouseEventTypeForEvent):
310 (WebCore::clickCountForEvent):
311 (WebCore::momentumPhaseForEvent):
312 (WebCore::phaseForEvent):
313 (WebCore::gestureEventTypeForEvent):
314 (WebCore::textFromEvent):
315 (WebCore::unmodifiedTextFromEvent):
316 (WebCore::keyIdentifierForKeyEvent):
317 (WebCore::isKeypadEvent):
318 (WebCore::windowsKeyCodeForKeyEvent):
319 (WebCore::isKeyUpEvent):
320 (WebCore::modifiersForEvent):
321 (WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder):
322 (WebCore::PlatformEventFactory::createPlatformMouseEvent):
323 (WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder):
324 (WebCore::PlatformEventFactory::createPlatformWheelEvent):
325 (WebCore::PlatformKeyboardEventBuilder::PlatformKeyboardEventBuilder):
326 (WebCore::PlatformEventFactory::createPlatformKeyboardEvent):
327 (WebCore::PlatformGestureEventBuilder::PlatformGestureEventBuilder):
328 (WebCore::PlatformEventFactory::createPlatformGestureEvent):
330 2012-01-03 Wei James <james.wei@intel.com>
332 Optimize AudioBufferSourceNode process by avoiding interpolation when pitchRate==1
333 https://bugs.webkit.org/show_bug.cgi?id=74592
335 Reviewed by Kenneth Russell.
337 Covered by existing webaudio layout tests, especially webaudio/audiobuffersource-playbackrate.html
339 * webaudio/AudioBufferSourceNode.cpp:
340 (WebCore::AudioBufferSourceNode::renderSilenceAndFinishIfNotLooping):
341 (WebCore::AudioBufferSourceNode::renderFromBuffer):
342 * webaudio/AudioBufferSourceNode.h:
344 2012-01-03 Joseph Pecoraro <pecoraro@apple.com>
346 Web Inspector: Access to Node Highlighting info without drawing
347 https://bugs.webkit.org/show_bug.cgi?id=75504
349 Provide a "getHighlight" method alongside "drawHighlight" that
350 gets most of the important node highlighting information. This
351 can be used by a port to do its own node highlighting or provide
352 extra content without interfering with the highlight rects.
354 Reviewed by Timothy Hatcher.
356 * WebCore.xcodeproj/project.pbxproj:
357 Privately expose the Highlight struct in DOMNodeHighlighter.h.
359 * inspector/DOMNodeHighlighter.cpp:
360 (WebCore::DOMNodeHighlighter::drawHighlight):
361 (WebCore::DOMNodeHighlighter::getHighlight):
362 * inspector/DOMNodeHighlighter.h:
363 Reuse the existing draw code to instead populate
364 the Highlight struct with the information it is
365 about to draw, and only draw if there is a context.
367 * inspector/InspectorController.cpp:
368 (WebCore::InspectorController::getHighlight):
369 * inspector/InspectorController.h:
370 * inspector/InspectorDOMAgent.cpp:
371 (WebCore::InspectorDOMAgent::getHighlight):
372 * inspector/InspectorDOMAgent.h:
373 Get highlight information by going through getHighlight
374 in InspectorController. This is alongside drawHighlight.
376 2012-01-03 Shawn Singh <shawnsingh@chromium.org>
378 [chromium] Push drawsContent and contentsVisible into accelerated compositor
379 https://bugs.webkit.org/show_bug.cgi?id=71209
381 Reviewed by James Robinson.
383 Tests: compositing/visibility/visibility-simple-canvas2d-layer.html
384 compositing/visibility/visibility-simple-video-layer.html
385 compositing/visibility/visibility-simple-webgl-layer.html
387 Rebaselined compositing/visibility/visibility-image-layers.html
389 The CSS visibility property was not being properly obeyed by many
390 specialized layer types in the accelerated compositor. The root of
391 the problem was that drawsContent and contentsVisible flags were
392 not properly propagated into the compositor. This patch removes
393 the drawsContent() callback, and instead makes sure that
394 drawsContent and contentsVisible are "pushed" through the
395 accelerated compositor.
397 * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
398 (WebCore::Canvas2DLayerChromium::drawsContent):
399 * platform/graphics/chromium/ContentLayerChromium.cpp:
400 * platform/graphics/chromium/ContentLayerChromium.h:
401 * platform/graphics/chromium/GraphicsLayerChromium.cpp:
402 (WebCore::GraphicsLayerChromium::setDrawsContent):
403 (WebCore::GraphicsLayerChromium::setContentsVisible):
404 (WebCore::GraphicsLayerChromium::setContentsToImage):
405 (WebCore::GraphicsLayerChromium::setContentsToCanvas):
406 (WebCore::GraphicsLayerChromium::setContentsToMedia):
407 (WebCore::GraphicsLayerChromium::updateLayerIsDrawable):
408 (WebCore::GraphicsLayerChromium::setupContentsLayer):
409 * platform/graphics/chromium/GraphicsLayerChromium.h:
410 * platform/graphics/chromium/LayerChromium.cpp:
411 (WebCore::LayerChromium::LayerChromium):
412 (WebCore::LayerChromium::setIsDrawable):
413 * platform/graphics/chromium/LayerChromium.h:
414 (WebCore::LayerChromium::drawsContent):
415 * platform/graphics/chromium/PluginLayerChromium.h:
416 * platform/graphics/chromium/TiledLayerChromium.cpp:
417 (WebCore::TiledLayerChromium::drawsContent):
418 * platform/graphics/chromium/VideoLayerChromium.h:
419 * platform/graphics/chromium/WebGLLayerChromium.cpp:
420 (WebCore::WebGLLayerChromium::drawsContent):
421 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
422 (WebCore::CCLayerImpl::dumpLayerProperties):
424 2012-01-03 Shawn Singh <shawnsingh@chromium.org>
426 [chromium] Make sure root damage rect gets passed to renderer
427 https://bugs.webkit.org/show_bug.cgi?id=74893
429 Reviewed by James Robinson.
431 Unit test added to CCLayerTreeHostImplTest.cpp
433 * platform/graphics/chromium/LayerRendererChromium.cpp:
434 (WebCore::LayerRendererChromium::swapBuffers):
435 * platform/graphics/chromium/LayerRendererChromium.h:
436 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
437 (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
438 (WebCore::CCLayerTreeHostImpl::swapBuffers):
439 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
441 2012-01-03 Yuzhu Shen <yzshen@chromium.org>
443 v8 binding: npCreateV8ScriptObject() should not returned an existing V8NPObject if the rootObject doesn't match
444 https://bugs.webkit.org/show_bug.cgi?id=74515
446 Reviewed by Nate Chapin.
448 Test: http/tests/plugins/create-v8-script-objects.html
450 * bindings/v8/NPV8Object.cpp:
451 (WebCore::freeV8NPObject):
452 (WebCore::npCreateV8ScriptObject):
454 2012-01-03 Jon Lee <jonlee@apple.com>
456 Leak of WebNotificationClient when page is destroyed
457 https://bugs.webkit.org/show_bug.cgi?id=74980
458 <rdar://problem/10611231>
460 Reviewed by Mark Rowe.
462 * notifications/NotificationController.cpp:
463 (WebCore::NotificationController::~NotificationController): Notify the client
464 that the controller has been destroyed.
465 * notifications/NotificationPresenter.h: Add notificationControllerDestroyed()
466 callback to the client interface.
468 2012-01-03 Alexis Menard <alexis.menard@openbossa.org>
470 getComputedStyle for list-style is not implemented.
471 https://bugs.webkit.org/show_bug.cgi?id=75443
473 Reviewed by Tony Chang.
475 Implement getComputedStyle for list-style.
477 Test: fast/css/getComputedStyle/getComputedStyle-list-style-shorthand.html
479 * css/CSSComputedStyleDeclaration.cpp:
480 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
482 2012-01-03 Adrienne Walker <enne@google.com>
484 [chromium] Remove unneeded content vs. layer space distinction in tiled layers
485 https://bugs.webkit.org/show_bug.cgi?id=75498
487 Reviewed by James Robinson.
489 Long ago, before scrollbars became their own layers, tiled layers had
490 a distinction between content space (what's mostly called layer space
491 elsewhere) and layer space (the transformed content space). It seemed
492 like this transform could get reused for supporting RTL pages, but as
493 that's not the case, it should be eradicated.
495 Tiled layers now deal with everything in "layer space", which is a 2d
496 rectangle starting at (0, 0) in the top left of the layer and
497 extending to contentBounds() in the bottom right.
499 As no code actually set the tiler position, this change should be a
502 Test: LayoutTests/compositing/
504 * platform/graphics/chromium/TiledLayerChromium.cpp:
505 (WebCore::UpdatableTile::isDirty):
506 (WebCore::UpdatableTile::clearDirty):
507 (WebCore::TiledLayerChromium::updateCompositorResources):
508 (WebCore::TiledLayerChromium::createTile):
509 (WebCore::TiledLayerChromium::invalidateRect):
510 (WebCore::TiledLayerChromium::protectTileTextures):
511 (WebCore::TiledLayerChromium::prepareToUpdateTiles):
512 (WebCore::TiledLayerChromium::prepareToUpdate):
513 (WebCore::TiledLayerChromium::prepareToUpdateIdle):
514 (WebCore::TiledLayerChromium::needsIdlePaint):
515 (WebCore::TiledLayerChromium::idlePaintRect):
516 * platform/graphics/chromium/TiledLayerChromium.h:
517 * platform/graphics/chromium/cc/CCLayerTilingData.cpp:
518 (WebCore::CCLayerTilingData::operator=):
519 (WebCore::CCLayerTilingData::layerRectToTileIndices):
520 (WebCore::CCLayerTilingData::tileRect):
521 * platform/graphics/chromium/cc/CCLayerTilingData.h:
522 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
523 (WebCore::CCTiledLayerImpl::appendQuads):
525 2011-12-22 Joseph Pecoraro <pecoraro@apple.com>
527 Implement Date and Time Input Value Sanitization
528 https://bugs.webkit.org/show_bug.cgi?id=59951
530 Sanitize non-parsable incoming strings to the empty string.
532 Reviewed by Kent Tamura.
534 Covered by existing tests.
536 * html/BaseDateAndTimeInputType.h:
537 * html/BaseDateAndTimeInputType.cpp:
538 (WebCore::BaseDateAndTimeInputType::sanitizeValue): check if the
539 incoming string is valid. If not just return the empty string.
541 2012-01-03 Julien Chaffraix <jchaffraix@webkit.org>
543 RenderLayer::backgroundClipRect should not check parent()
544 https://bugs.webkit.org/show_bug.cgi?id=73731
546 Reviewed by Simon Fraser.
548 Clean-up only, no expected change in behavior.
550 * rendering/RenderLayer.cpp:
551 (WebCore::backgroundClipRectForPosition): Changed RenderObject::isPositioned() to
552 a check for AbsolutePosition for consistency but also as this is equivalent due to:
553 - the previous check for FixedPosition.
554 - RenderView, which is positioned, will never goes to this code as it has no parent().
556 (WebCore::RenderLayer::backgroundClipRect): Removed the parent() check. While at
557 it, also moved the inline initialization of |backgroundClipRect| to its own function
558 and removed a |view| check as the associated ASSERT seems to never have been reached.
560 2012-01-03 Alexey Proskuryakov <ap@apple.com>
562 <rdar://problem/10637779> REGRESSION (r102247): Focus ring is not drawn around a button
564 Rubber-stamped by Dan Bernstein.
566 * platform/mac/ThemeMac.mm: (WebCore::updateStates): Flip an incorrect conditional, this code
567 should run on Snow Leopard and Lion.
569 2012-01-03 Alexis Menard <alexis.menard@openbossa.org>
571 getComputedStyle should return shorthands property with the minimum number of sides possible.
572 https://bugs.webkit.org/show_bug.cgi?id=75434
574 Reviewed by Tony Chang.
576 As stated in http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSS2Properties we should
577 return shorthands properties with the minimum number of sides possible.
579 Existing tests have been updated accordingly.
581 * css/CSSComputedStyleDeclaration.cpp:
582 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
583 (WebCore::CSSComputedStyleDeclaration::getCSSPropertyValuesForSidesShorthand):
584 * css/CSSComputedStyleDeclaration.h:
586 2012-01-03 Martin Robinson <mrobinson@igalia.com>
588 [GTK] GTK+ 3 theming code does not use the GtkOrientable style class
589 https://bugs.webkit.org/show_bug.cgi?id=72789
591 Reviewed by Philippe Normand.
593 No new tests. Testing GTK+ theming is quite difficult
594 because no two distributions have the same set of themes.
595 Current tests prevent regressions.
597 * platform/gtk/RenderThemeGtk3.cpp:
598 (WebCore::applySliderStyleContextClasses): Added this helper that
599 properly handles the orientable style class.
600 (WebCore::RenderThemeGtk::paintSliderTrack): Use the new helper.
601 (WebCore::RenderThemeGtk::paintSliderThumb): Ditto.
602 * platform/gtk/ScrollbarThemeGtk3.cpp:
603 (WebCore::applyScrollbarStyleContextClasses): Added this helper that
604 properly handles the orientable style class.
605 (WebCore::ScrollbarThemeGtk::paintTrackBackground): Use the new helper.
606 (WebCore::ScrollbarThemeGtk::paintScrollbarBackground): Ditto.
607 (WebCore::ScrollbarThemeGtk::paintThumb): Ditto.
608 (WebCore::ScrollbarThemeGtk::paintButton): Ditto.
610 2012-01-03 Florin Malita <fmalita@google.com>
612 NULL ptr in WebCore::SVGStyledTransformableElement::animatedLocalTransform
613 https://bugs.webkit.org/show_bug.cgi?id=75227
615 Reviewed by Dirk Schulze.
617 Test: svg/custom/webkit-transform-crash.html
619 * svg/SVGStyledTransformableElement.cpp:
620 (WebCore::SVGStyledTransformableElement::animatedLocalTransform):
621 Add a null-renderer check.
623 2012-01-03 Alexis Menard <alexis.menard@openbossa.org>
625 getComputedStyle for border is not implemented.
626 https://bugs.webkit.org/show_bug.cgi?id=75319
628 Reviewed by Tony Chang.
630 Implement getComputedStyle for border.
632 fast/css/getComputedStyle/getComputedStyle-border-shorthand.html was extented.
634 * css/CSSComputedStyleDeclaration.cpp:
635 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
637 2012-01-03 Alexis Menard <alexis.menard@openbossa.org>
639 Sort the WebCore Xcode project file
641 Reviewed by Dimitri Glazkov.
643 * WebCore.xcodeproj/project.pbxproj:
645 2012-01-03 Adrienne Walker <enne@google.com>
647 [chromium] Set tiler bounds explicitly rather than growing them
648 https://bugs.webkit.org/show_bug.cgi?id=75331
650 Reviewed by James Robinson.
652 Rather than only growing bounds, make the bounds on the tiler be set
653 explicitly by TiledLayerChromium. This patch now properly invalidates
654 regions when the bounds change.
656 * platform/graphics/chromium/TiledLayerChromium.cpp:
657 (WebCore::TiledLayerChromium::updateBounds):
658 (WebCore::TiledLayerChromium::prepareToUpdate):
659 (WebCore::TiledLayerChromium::prepareToUpdateIdle):
660 * platform/graphics/chromium/TiledLayerChromium.h:
661 * platform/graphics/chromium/cc/CCLayerTilingData.cpp:
662 (WebCore::CCLayerTilingData::setBounds):
663 (WebCore::CCLayerTilingData::bounds):
664 * platform/graphics/chromium/cc/CCLayerTilingData.h:
666 2012-01-03 Martin Robinson <mrobinson@igalia.com>
668 [GTK] Slider thumb is not centered on the track with the unico theme
669 https://bugs.webkit.org/show_bug.cgi?id=72802
671 Reviewed by Philippe Normand.
673 No new tests. This only applies to certain GTK+ themes.
674 Existing tests cover the default GTK+ theme.
676 * platform/gtk/RenderThemeGtk3.cpp:
677 (WebCore::RenderThemeGtk::paintSliderThumb): Do not resize the
678 slider thumb by the trough border.
680 2012-01-03 Adrienne Walker <enne@google.com>
682 [chromium] Make tiled layer's tiler always exist
683 https://bugs.webkit.org/show_bug.cgi?id=75329
685 Reviewed by James Robinson.
687 TiledLayerChromium has some awkward code to handle lazily creating the
688 tiler, including lots of null checks and shadowing the tile size.
689 Instead, always create the tiler up front. As values change that
690 invalidate all tiles, reset it rather than clear the pointer.
692 * platform/graphics/chromium/LayerChromium.cpp:
693 (WebCore::LayerChromium::setIsNonCompositedContent):
694 * platform/graphics/chromium/LayerChromium.h:
695 * platform/graphics/chromium/TiledLayerChromium.cpp:
696 (WebCore::TiledLayerChromium::TiledLayerChromium):
697 (WebCore::TiledLayerChromium::cleanupResources):
698 (WebCore::TiledLayerChromium::setTileSize):
699 (WebCore::TiledLayerChromium::setBorderTexelOption):
700 (WebCore::TiledLayerChromium::drawsContent):
701 (WebCore::TiledLayerChromium::updateCompositorResources):
702 (WebCore::TiledLayerChromium::setTilingOption):
703 (WebCore::TiledLayerChromium::pushPropertiesTo):
704 (WebCore::TiledLayerChromium::setIsNonCompositedContent):
705 (WebCore::TiledLayerChromium::invalidateRect):
706 (WebCore::TiledLayerChromium::protectTileTextures):
707 (WebCore::TiledLayerChromium::prepareToUpdate):
708 (WebCore::TiledLayerChromium::prepareToUpdateIdle):
709 (WebCore::TiledLayerChromium::needsIdlePaint):
710 (WebCore::TiledLayerChromium::idlePaintRect):
711 * platform/graphics/chromium/TiledLayerChromium.h:
712 * platform/graphics/chromium/cc/CCLayerTilingData.cpp:
713 (WebCore::CCLayerTilingData::setBorderTexelOption):
714 * platform/graphics/chromium/cc/CCLayerTilingData.h:
715 * platform/graphics/gpu/TilingData.cpp:
716 (WebCore::TilingData::setHasBorderTexels):
717 * platform/graphics/gpu/TilingData.h:
719 2012-01-03 Kentaro Hara <haraken@chromium.org>
721 Unreviewed. Rebaselined run-bindings-tests results.
723 * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
724 (WebCore::JSTestEventConstructor::destroy):
725 * bindings/scripts/test/JS/JSTestEventConstructor.h:
726 (WebCore::JSTestEventConstructor::releaseImplIfNotNull):
727 * bindings/scripts/test/JS/JSTestInterface.cpp:
728 (WebCore::JSTestInterface::destroy):
729 * bindings/scripts/test/JS/JSTestInterface.h:
730 (WebCore::JSTestInterface::releaseImplIfNotNull):
731 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
732 (WebCore::JSTestMediaQueryListListener::destroy):
733 * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
734 (WebCore::JSTestMediaQueryListListener::releaseImplIfNotNull):
735 * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
736 (WebCore::JSTestNamedConstructor::destroy):
737 * bindings/scripts/test/JS/JSTestNamedConstructor.h:
738 (WebCore::JSTestNamedConstructor::releaseImplIfNotNull):
739 * bindings/scripts/test/JS/JSTestObj.cpp:
740 (WebCore::JSTestObj::destroy):
741 * bindings/scripts/test/JS/JSTestObj.h:
742 (WebCore::JSTestObj::releaseImplIfNotNull):
743 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
744 (WebCore::JSTestSerializedScriptValueInterface::destroy):
745 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
746 (WebCore::JSTestSerializedScriptValueInterface::releaseImplIfNotNull):
748 2012-01-03 Carlos Garcia Campos <cgarcia@igalia.com>
750 [GTK] Fix scrollbars size with GTK+ 3.x
751 https://bugs.webkit.org/show_bug.cgi?id=75467
753 Reviewed by Xan Lopez.
755 * platform/gtk/RenderThemeGtk3.cpp:
756 (WebCore::getStyleContext): Add the style class for the given
757 widget type to the GtkWidgetPath when creating GtkStyleContext
760 2012-01-03 Alexis Menard <alexis.menard@openbossa.org>
762 getComputedStyle for outline is not implemented.
763 https://bugs.webkit.org/show_bug.cgi?id=75441
765 Reviewed by Antonio Gomes.
767 Implement getComputedStyle for outline.
769 Test: fast/css/getComputedStyle/getComputedStyle-outline-shorthand.html
771 * css/CSSComputedStyleDeclaration.cpp:
772 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
774 2012-01-03 Carlos Garcia Campos <cgarcia@igalia.com>
776 [GTK] Use gdk_screen_get_monitor_workarea() when available for screenAvailableRect()
777 https://bugs.webkit.org/show_bug.cgi?id=75435
779 Reviewed by Martin Robinson.
781 * platform/gtk/GtkVersioning.c:
782 (getScreenCurrentDesktop):
784 (gdk_screen_get_monitor_workarea): Implement it when GTK+ < 3.3.6.
785 * platform/gtk/GtkVersioning.h:
786 * platform/gtk/PlatformScreenGtk.cpp:
787 (WebCore::screenAvailableRect): Use
788 gdk_screen_get_monitor_workarea() instead of our own
791 2012-01-02 Kentaro Hara <haraken@chromium.org>
793 REGRESSION(r103919): Remove resolve-supplemental.pl from the WebCore target in Xcode
794 https://bugs.webkit.org/show_bug.cgi?id=75458
796 Reviewed by Adam Barth.
798 At r103919, we added resolve-supplemental.pl to WebCore.framework/Resources,
799 but we should have added it to the project without adding it to any target.
802 No tests. No change in behavior.
804 * WebCore.xcodeproj/project.pbxproj:
806 2012-01-02 Kentaro Hara <haraken@chromium.org>
808 Enable the [Supplemental] IDL on GTK/GObject
809 https://bugs.webkit.org/show_bug.cgi?id=75411
811 Reviewed by Adam Barth.
813 This patch enables the [Supplemental] IDL on GObject bindings of GTK
814 by changing the build flow of bindings/gobject/GNUmakefile.am as follows.
816 - Previous build flow:
817 foreach $idl (all IDL files) {
818 generate-bindings.pl depends on $idl;
819 generate-bindings.pl reads $idl;
820 generate-bindings.pl generates .h and .cpp files for $idl;
823 - New build flow (See the discussions in bug 72138 for more details):
824 resolve-supplemental.pl depends on all IDL files;
825 resolve-supplemental.pl reads all IDL files;
826 resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
827 resolve-supplemental.pl outputs supplemental_dependency.tmp;
828 foreach $idl (all IDL files) {
829 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
830 generate-bindings.pl reads $idl;
831 generate-bindings.pl reads supplemental_dependency.tmp;
832 generate-bindings.pl generates .h and .cpp files for $idl,
833 including all attributes in the IDL files that are implementing $idl;
836 Tests: Confirm that build succeeds.
837 http/tests/websocket/tests/*
840 * bindings/gobject/GNUmakefile.am:
842 2012-01-02 Kentaro Hara <haraken@chromium.org>
844 Add resolve-supplemental.pl to project.pbxproj
845 https://bugs.webkit.org/show_bug.cgi?id=75426
847 Reviewed by Adam Barth.
849 We should have added "resolve-supplemental.pl" to build scripts of AppleWebKit
850 when we enabled the [Supplemental] IDL on AppleWebKit at r103519.
851 This is a follow-up patch for it.
853 No tests. Just confirm that the AppleWebKit build passes.
855 * WebCore.xcodeproj/project.pbxproj:
857 2012-01-02 Kentaro Hara <haraken@chromium.org>
859 Add resolve-supplemental.pl to build scripts of AppleWin
860 https://bugs.webkit.org/show_bug.cgi?id=75412
862 Reviewed by Adam Barth.
864 We should have added "resolve-supplemental.pl" to build scripts of AppleWin
865 when we enabled the [Supplemental] IDL on AppleWin at r103519.
866 This is a follow-up patch for it.
868 No tests. Just confirm that the AppleWin build passes.
870 * WebCore.vcproj/MigrateScripts:
871 * WebCore.vcproj/WebCore.vcproj:
873 2012-01-02 Sam Weinig <sam@webkit.org>
877 * bindings/scripts/CodeGeneratorJS.pm:
879 2012-01-02 Andy Estes <aestes@apple.com>
881 Fix the Windows build after r103888.
883 * WebCore.vcproj/WebCore.vcproj: Remove CollectionCache.{cpp, h} from
886 2012-01-02 Sam Weinig <sam@webkit.org>
888 REGRESSION(r100517): We're leaking many, many DOM objects!
889 https://bugs.webkit.org/show_bug.cgi?id=75451
891 Reviewed by Mark Rowe.
893 * bindings/scripts/CodeGeneratorJS.pm:
894 Add a temporary workaround to the problem of handle finalizers
895 not getting called by adding back the destructors (or rather
896 their replacement, destroy() functions).
898 2012-01-02 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
900 Fix chromium mac build after r103905
901 https://bugs.webkit.org/show_bug.cgi?id=75436
903 Reviewed by Csaba Osztrogonác.
905 Adding parenthesis to disambiguate because clang gives error
906 "expression is not assignable".
908 * rendering/svg/RenderSVGResourceGradient.cpp:
909 (WebCore::RenderSVGResourceGradient::applyResource):
911 2011-12-29 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
913 Use HashMap<OwnPtr> in RenderSVGResourceGradient
914 https://bugs.webkit.org/show_bug.cgi?id=75364
916 Reviewed by Daniel Bates.
918 * rendering/svg/RenderSVGResourceGradient.cpp:
919 (WebCore::RenderSVGResourceGradient::removeAllClientsFromCache):
920 (WebCore::RenderSVGResourceGradient::removeClientFromCache):
921 (WebCore::RenderSVGResourceGradient::applyResource): avoid looking
922 up the hash twice by using HashMap::add().
923 * rendering/svg/RenderSVGResourceGradient.h: rename m_gradient to m_gradientMap.
925 2012-01-02 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
927 [Qt] Fix qmake warning about unescaped backslashes
931 * DerivedSources.pri:
933 2012-01-02 Carlos Garcia Campos <cgarcia@igalia.com>
935 Unreviewed. Fix make distcheck issue.
937 * GNUmakefile.am: Add resolve-supplemental.pl script to
940 2012-01-01 Andreas Kling <awesomekling@apple.com>
942 Clear HTMLCollection's internal cache on construction.
943 <http://webkit.org/b/75423>
945 Reviewed by Antti Koivisto.
947 * html/HTMLCollection.h:
948 * html/HTMLCollection.cpp:
949 (WebCore::HTMLCollection::HTMLCollection):
950 (WebCore::HTMLCollection::invalidateCacheIfNeeded):
952 2012-01-01 Eunmi Lee <eunmi15.lee@samsung.com>
954 [EFL] Move function to get dpi to the WebCore/platform/efl/EflScreenUtilities.cpp.
955 https://bugs.webkit.org/show_bug.cgi?id=75292
957 Reviewed by Andreas Kling.
959 Move ewk_util_dpi_get() function in the ewk_util.cpp to the
960 WebCore/platform/efl/EflScreenUtilities.cpp in order to use it in the WebKit2.
961 The function's name is changed to getDPI().
964 * platform/efl/EflScreenUtilities.cpp: Added.
966 * platform/efl/EflScreenUtilities.h: Added.
968 2012-01-01 Andreas Kling <awesomekling@apple.com>
970 Merge CollectionCache into HTMLCollection.
971 <http://webkit.org/b/75423>
973 Reviewed by Anders Carlsson.
975 - Move the members of CollectionCache into HTMLCollection.
976 - Renamed resetCollectionInfo() to invalidateCacheIfNeeded().
977 - Removed a bunch of overkill HashMap::checkConsistency() calls.
980 * GNUmakefile.list.am:
983 * WebCore.xcodeproj/project.pbxproj:
984 * html/CollectionCache.cpp: Removed.
985 * html/CollectionCache.h: Removed.
987 Remove CollectionCache.
989 * html/HTMLAllCollection.cpp:
990 (WebCore::HTMLAllCollection::namedItemWithIndex):
991 * html/HTMLCollection.cpp:
992 (WebCore::HTMLCollection::HTMLCollection):
993 (WebCore::HTMLCollection::~HTMLCollection):
994 (WebCore::HTMLCollection::invalidateCacheIfNeeded):
995 (WebCore::HTMLCollection::length):
996 (WebCore::HTMLCollection::item):
997 (WebCore::HTMLCollection::nextItem):
998 (WebCore::HTMLCollection::namedItem):
999 (WebCore::HTMLCollection::updateNameCache):
1000 (WebCore::HTMLCollection::hasNamedItem):
1001 (WebCore::HTMLCollection::namedItems):
1002 (WebCore::HTMLCollection::append):
1003 * html/HTMLCollection.h:
1004 * html/HTMLFormCollection.cpp:
1005 (WebCore::HTMLFormCollection::item):
1006 (WebCore::HTMLFormCollection::getNamedItem):
1007 (WebCore::HTMLFormCollection::nextItem):
1008 (WebCore::HTMLFormCollection::namedItem):
1009 (WebCore::HTMLFormCollection::updateNameCache):
1011 HTMLCollection's m_info and info() become "struct m_cache" (protected.)
1013 * html/HTMLOptionsCollection.cpp:
1014 * html/HTMLOptionsCollection.h:
1015 * html/HTMLSelectElement.cpp:
1016 (WebCore::HTMLSelectElement::setRecalcListItems):
1018 Expose HTMLCollection::invalidateCacheIfNeeded() so we can call it from
1019 HTMLSelectElement::setRecalcListItems().
1021 * html/HTMLFormCollection.h:
1023 Remove stale declaration of formCollectionInfo() which no longer exists.
1025 2012-01-01 Andreas Kling <awesomekling@apple.com>
1027 Move the remaining collections to caching on their respective base nodes.
1028 <http://webkit.org/b/75416>
1030 Reviewed by Anders Carlsson.
1032 Add a (lazily-allocated) array of HTMLCollections to ElementRareData and cache
1033 the various collections on their base node rather than recreating them every time.
1035 Test: fast/dom/collection-idempotence.html
1038 * html/CollectionType.h:
1039 * dom/ElementRareData.h:
1040 (WebCore::ElementRareData::hasCachedHTMLCollections):
1041 (WebCore::ElementRareData::cachedHTMLCollection):
1042 (WebCore::ElementRareData::ensureCachedHTMLCollection):
1045 (WebCore::Element::ensureCachedHTMLCollection):
1047 Plumbing to cache HTMLCollections on ElementRareData.
1049 (WebCore::Element::~Element):
1051 Detach any cached collections from an element when it's destroyed.
1053 * html/HTMLCollection.h:
1054 * html/HTMLCollection.cpp:
1055 (WebCore::HTMLCollection::HTMLCollection):
1056 (WebCore::HTMLCollection::create):
1057 (WebCore::HTMLCollection::~HTMLCollection):
1058 (WebCore::HTMLCollection::detachFromNode):
1059 * html/HTMLTableRowsCollection.cpp:
1060 (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
1061 * html/HTMLOptionsCollection.cpp:
1062 (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
1063 * html/HTMLFormCollection.cpp:
1064 (WebCore::HTMLFormCollection::HTMLFormCollection):
1066 (WebCore::Document::cachedCollection):
1068 Consolidate the HTMLCollection constructors and get rid of the hacks to
1069 optionally retain the base node.
1071 * html/HTMLDataListElement.cpp:
1072 (WebCore::HTMLDataListElement::options):
1073 * html/HTMLElement.cpp:
1074 (WebCore::HTMLElement::children):
1075 * html/HTMLMapElement.cpp:
1076 (WebCore::HTMLMapElement::areas):
1077 * html/HTMLTableElement.cpp:
1078 (WebCore::HTMLTableElement::tBodies):
1079 * html/HTMLTableRowElement.cpp:
1080 (WebCore::HTMLTableRowElement::cells):
1081 * html/HTMLTableSectionElement.cpp:
1082 (WebCore::HTMLTableSectionElement::rows):
1086 2012-01-01 Raymond Liu <raymond.liu@intel.com>
1088 Use overload methods to implement [Optional] parameters in AudioNode.idl
1089 https://bugs.webkit.org/show_bug.cgi?id=75402
1091 Reviewed by Adam Barth.
1093 No new tests required.
1095 * GNUmakefile.list.am:
1098 * WebCore.xcodeproj/project.pbxproj:
1099 * bindings/js/JSAudioNodeCustom.cpp: Removed.
1100 * bindings/v8/custom/V8AudioNodeCustom.cpp: Removed.
1101 * webaudio/AudioNode.cpp:
1102 (WebCore::AudioNode::connect):
1103 (WebCore::AudioNode::disconnect):
1104 * webaudio/AudioNode.h:
1105 * webaudio/AudioNode.idl:
1107 2011-12-20 Robert Hogan <robert@webkit.org>
1109 CSS 2.1 failure: border-collapse-offset-002.htm fails
1110 https://bugs.webkit.org/show_bug.cgi?id=71705
1112 Reviewed by Julien Chaffraix.
1114 Tests: css2.1/20110323/border-collapse-offset-002-expected.html
1115 fast/css/caption-width-absolute-position-offset-top.htm
1116 fast/css/caption-width-absolute-position.htm
1117 fast/css/caption-width-fixed-position-offset-top.htm
1118 fast/css/caption-width-fixed-position.htm
1119 fast/css/caption-width-relative-position-offset-top.htm
1120 fast/css/caption-width-relative-position.htm
1122 Table captions are implemented as children of the table but have a special
1123 requirement to expand to the full width of the table rather than just the 'available'
1124 width, i.e. the full width minus padding and borders.
1126 To accomodate this create a RenderTableCaption object that reimplements containingBlockLogicalWidthForContent()
1127 to return the full width of the containing block (i.e. the table) rather than the available width.
1130 * CMakeLists.txt: Add RenderTableCaption.[cpp|h]
1131 * GNUmakefile.list.am: Add RenderTableCaption.[cpp|h]
1132 * Target.pri: Add RenderTableCaption.[cpp|h]
1133 * WebCore.gypi: Add RenderTableCaption.[cpp|h]
1134 * WebCore.vcproj/WebCore.vcproj: Add RenderTableCaption.[cpp|h]
1135 * WebCore.xcodeproj/project.pbxproj: Add RenderTableCaption.[cpp|h]
1136 * rendering/RenderBlock.cpp:
1137 (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks): Use RenderTableCaption
1138 * rendering/RenderObject.cpp:
1139 (WebCore::RenderObject::createObject): Add RenderTableCaption.[cpp|h]
1140 (WebCore::RenderObject::addChild): ditto
1141 * rendering/RenderObject.h:
1142 (WebCore::RenderObject::isTableCaption):
1143 * rendering/RenderTable.cpp:
1144 (WebCore::RenderTable::addChild):
1145 * rendering/RenderTable.h:
1146 * rendering/RenderTableCaption.cpp: Added.
1147 (WebCore::RenderTableCaption::RenderTableCaption): Implement RenderTableCaption
1148 (WebCore::RenderTableCaption::~RenderTableCaption):
1149 (WebCore::RenderTableCaption::containingBlockLogicalWidthForContent): Return the containing block's full width rather than it's available width.
1150 * rendering/RenderTableCaption.h: Added.
1151 (WebCore::RenderTableCaption::isTableCaption):
1152 (WebCore::toRenderTableCaption):
1153 * rendering/RenderingAllInOne.cpp:
1155 2012-01-01 Kentaro Hara <haraken@chromium.org>
1157 Unreviewed. Rebaselined run-bindings-tests results.
1159 * bindings/scripts/test/CPP/WebDOMTestSupplemental.cpp: Added.
1160 * bindings/scripts/test/CPP/WebDOMTestSupplemental.h: Added.
1161 * bindings/scripts/test/GObject/WebKitDOMTestSupplemental.cpp: Added.
1162 * bindings/scripts/test/GObject/WebKitDOMTestSupplemental.h: Added.
1163 * bindings/scripts/test/ObjC/DOMTestSupplemental.cpp: Added.
1164 * bindings/scripts/test/ObjC/DOMTestSupplemental.h: Added.
1166 2012-01-01 Andreas Kling <awesomekling@apple.com>
1168 Make HTMLCollections play nice after their base node is gone.
1169 <http://webkit.org/b/75410>
1171 Reviewed by Anders Carlsson.
1173 Added HTMLCollection::detachFromNode() and call that from destructors of nodes
1174 with cached collections.
1176 Sprinkled checks/assertions where applicable to make sure HTMLCollections are
1177 empty after their associated node has been destroyed.
1179 This is a slight change in behavior, as collections would previously keep
1180 their nodes alive indefinitely. Added a test to document this.
1182 Test: fast/dom/htmlcollection-zombies.html
1185 (WebCore::Document::~Document):
1186 * html/HTMLAllCollection.cpp:
1187 (WebCore::HTMLAllCollection::namedItemWithIndex):
1188 * html/HTMLCollection.cpp:
1189 (WebCore::HTMLCollection::detachFromNode):
1190 (WebCore::HTMLCollection::resetCollectionInfo):
1191 (WebCore::HTMLCollection::itemAfter):
1192 (WebCore::HTMLCollection::calcLength):
1193 (WebCore::HTMLCollection::length):
1194 (WebCore::HTMLCollection::item):
1195 (WebCore::HTMLCollection::nextItem):
1196 (WebCore::HTMLCollection::namedItem):
1197 (WebCore::HTMLCollection::updateNameCache):
1198 (WebCore::HTMLCollection::hasNamedItem):
1199 (WebCore::HTMLCollection::namedItems):
1200 (WebCore::HTMLCollection::tags):
1201 * html/HTMLCollection.h:
1202 * html/HTMLFormCollection.cpp:
1203 (WebCore::HTMLFormCollection::calcLength):
1204 (WebCore::HTMLFormCollection::item):
1205 (WebCore::HTMLFormCollection::getNamedItem):
1206 (WebCore::HTMLFormCollection::getNamedFormItem):
1207 (WebCore::HTMLFormCollection::namedItem):
1208 (WebCore::HTMLFormCollection::updateNameCache):
1209 * html/HTMLFormElement.cpp:
1210 (WebCore::HTMLFormElement::~HTMLFormElement):
1211 * html/HTMLNameCollection.cpp:
1212 (WebCore::HTMLNameCollection::itemAfter):
1213 * html/HTMLOptionsCollection.cpp:
1214 (WebCore::HTMLOptionsCollection::add):
1215 (WebCore::HTMLOptionsCollection::remove):
1216 (WebCore::HTMLOptionsCollection::selectedIndex):
1217 (WebCore::HTMLOptionsCollection::setSelectedIndex):
1218 (WebCore::HTMLOptionsCollection::setLength):
1219 * html/HTMLPropertiesCollection.cpp:
1220 (WebCore::HTMLPropertiesCollection::length):
1221 (WebCore::HTMLPropertiesCollection::item):
1222 (WebCore::HTMLPropertiesCollection::names):
1223 * html/HTMLSelectElement.cpp:
1224 (WebCore::HTMLSelectElement::~HTMLSelectElement):
1225 * html/HTMLSelectElement.h:
1226 * html/HTMLTableElement.cpp:
1227 (WebCore::HTMLTableElement::~HTMLTableElement):
1228 * html/HTMLTableElement.h:
1229 * html/HTMLTableRowsCollection.cpp:
1230 (WebCore::HTMLTableRowsCollection::itemAfter):
1232 2012-01-01 Andreas Kling <awesomekling@apple.com>
1234 HTMLCollection: Remove the constructor's custom CollectionCache* argument.
1235 <http://webkit.org/b/75414>
1237 Reviewed by Anders Carlsson.
1239 We no longer need to initialize HTMLCollections with a custom CollectionCache,
1240 so remove the argument from the constructor.
1242 * html/HTMLCollection.cpp:
1243 (WebCore::HTMLCollection::HTMLCollection):
1244 * html/HTMLCollection.h:
1245 * html/HTMLFormCollection.cpp:
1246 (WebCore::HTMLFormCollection::HTMLFormCollection):
1247 * html/HTMLNameCollection.cpp:
1248 (WebCore::HTMLNameCollection::HTMLNameCollection):
1249 * html/HTMLOptionsCollection.cpp:
1250 (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
1251 * html/HTMLTableRowsCollection.cpp:
1252 (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
1254 2011-12-31 Dan Bernstein <mitz@apple.com>
1256 WebCore changes for: REGRESSION (WebKit2): Cursor, hover states not updated when page scrolls under stationary mouse pointer
1257 https://bugs.webkit.org/show_bug.cgi?id=75405
1259 Reviewed by Anders Carlsson.
1261 Test: fast/events/frame-scroll-fake-mouse-move.html
1263 * page/FrameView.cpp:
1264 (WebCore::FrameView::scrollPositionChanged): Added a call to
1265 EventHandler::dispatchFakeMouseMoveEventSoon().
1267 2012-01-01 Andreas Kling <awesomekling@apple.com>
1269 Cache named item collections on Document, not just their caches.
1270 <http://webkit.org/b/75403>
1272 Reviewed by Anders Carlsson.
1274 Keep two maps of name -> RefPtr<HTMLNameCollection> on Document. We already
1275 had maps for the CollectionCaches and were creating the HTMLNameCollections
1276 every time they were accessed. We now let the collections create and manage
1277 the CollectionCaches instead of Document.
1279 No new tests since these collections are not exposed to the web.
1283 (WebCore::Document::windowNamedItems):
1284 (WebCore::Document::documentNamedItems):
1286 Replace the name/CollectionCache maps by name/HTMLNameCollection maps.
1288 * bindings/js/JSDOMWindowCustom.cpp:
1289 (WebCore::namedItemGetter):
1290 * bindings/js/JSHTMLDocumentCustom.cpp:
1291 (WebCore::JSHTMLDocument::nameGetter):
1293 Pass names as AtomicStrings to Document's collection getters.
1295 * html/HTMLNameCollection.h:
1296 (WebCore::HTMLNameCollection::create):
1297 * html/HTMLNameCollection.cpp:
1298 (WebCore::HTMLNameCollection::HTMLNameCollection):
1300 Store the name in an AtomicString instead of a String, incidentally
1301 making traversal of HTMLNameCollections more efficient.
1303 * html/CollectionType.h:
1305 Remove two now-unneeded constants.
1307 2012-01-01 Andreas Kling <awesomekling@apple.com>
1309 Remove Document::collectionInfo() and let collections manage their caches.
1310 <http://webkit.org/b/75401>
1312 Reviewed by Anders Carlsson.
1314 Remove the CollectionCaches from Document and have the document's collections
1315 create and manage the caches on-demand instead. This is a step towards merging
1316 CollectionCache into HTMLCollection.
1320 * html/HTMLCollection.cpp:
1321 (WebCore::HTMLCollection::HTMLCollection):
1322 * html/HTMLOptionsCollection.cpp:
1324 2012-01-01 Andreas Kling <awesomekling@apple.com>
1326 RenderThemeMac: Avoid double hash lookup in systemColor().
1327 <http://webkit.org/b/75409>
1329 Reviewed by Anders Carlsson.
1331 * rendering/RenderThemeMac.mm:
1332 (WebCore::RenderThemeMac::systemColor):
1334 2012-01-01 Andreas Kling <awesomekling@apple.com>
1336 CSSStyleSelector: Avoid double hash lookup in keyframeStylesForAnimation().
1337 <http://webkit.org/b/75408>
1339 Reviewed by Anders Carlsson.
1341 * css/CSSStyleSelector.cpp:
1342 (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
1344 2012-01-01 Andreas Kling <awesomekling@apple.com>
1346 KeyframeAnimation: Use hash lookups to determine if property is animated.
1347 <http://webkit.org/b/75407>
1349 Reviewed by Anders Carlsson.
1351 Clean out an old FIXME about using hash lookups instead of iterating over
1354 * page/animation/KeyframeAnimation.cpp:
1355 (WebCore::KeyframeAnimation::hasAnimationForProperty):
1356 (WebCore::KeyframeAnimation::affectsProperty):
1358 2011-12-31 Dan Bernstein <mitz@apple.com>
1360 WebCore change for <rdar://problem/10463059> Cannot print USPS shipping labels
1361 http://webkit.org/b/72801
1363 Reviewed by Anders Carlsson and Alexey Proskuryakov.
1365 * WebCore.exp.in: Exported Chrome::print().
1367 2011-12-31 Dan Bernstein <mitz@apple.com>
1369 WebCore changes for <rdar://problem/8750356> REGRESSION (WebKit2): Printing a subframe containing a PDF prints the on-screen view instead of the entire PDF document
1370 <http://webkit.org/b/75232>
1372 Reviewed by Alexey Proskuryakov.
1374 * WebCore.exp.in: Exported PluginDocument::pluginWidget().
1375 * WebCore.xcodeproj/project.pbxproj: Promoted PluginDocument.h to private.
1376 * html/PluginDocument.h: Fixed a typo in a comment.
1378 2011-12-30 Andreas Kling <awesomekling@apple.com>
1380 Cache and reuse the HTMLTableElement.rows collection.
1381 <http://webkit.org/b/75398>
1383 Reviewed by Anders Carlsson.
1385 Let HTMLTableElement::rows() cache the returned collection and tie it to the
1386 lifetime of the form.
1388 Test: fast/dom/table-rows-collection-idempotence.html
1391 * html/HTMLTableElement.h:
1392 * html/HTMLTableElement.cpp:
1393 (WebCore::HTMLTableElement::rows):
1395 Cache the HTMLTableRowsCollection returned by rows() on the HTMLTableElement.
1396 Remove the per-table CollectionCache and let the collection manage that.
1398 * html/HTMLTableRowsCollection.h:
1399 * html/HTMLTableRowsCollection.cpp:
1400 (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
1401 (WebCore::HTMLTableRowsCollection::create):
1403 Tell the base class constructor to not retain the back-pointer to the table.
1405 2011-12-30 Andreas Kling <awesomekling@apple.com>
1407 Cache and reuse the HTMLSelectElement.options collection.
1408 <http://webkit.org/b/75399>
1410 Reviewed by Anders Carlsson.
1412 Let HTMLSelectElement::options() cache the returned collection and tie it to the
1413 lifetime of the form. This shrinks HTMLSelectElement by sizeof(CollectionCache)
1416 Test: fast/dom/select-options-collection-idempotence.html
1419 * html/HTMLSelectElement.h:
1420 * html/HTMLSelectElement.cpp:
1421 (WebCore::HTMLSelectElement::options):
1423 Cache the HTMLOptionsCollection returned by options() on the HTMLSelectElement.
1424 Remove the per-select CollectionCache and let the collection manage that.
1426 * html/HTMLOptionsCollection.h:
1427 * html/HTMLOptionsCollection.cpp:
1428 (WebCore::HTMLOptionsCollection::create):
1429 (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
1431 Tell the base class constructor to not retain the back-pointer to the element.
1433 * html/HTMLSelectElement.cpp:
1434 (WebCore::HTMLSelectElement::setRecalcListItems):
1435 * html/HTMLOptionsCollection.cpp:
1436 (WebCore::HTMLOptionsCollection::invalidateCache):
1438 Added so HTMLSelectElement can invalidate the collection without triggering
1439 unnecessary instantiation of a CollectionCache.
1441 2011-12-30 Kentaro Hara <haraken@chromium.org>
1443 Enable the [Supplemental] IDL on CMake
1444 https://bugs.webkit.org/show_bug.cgi?id=75345
1446 Reviewed by Daniel Bates.
1448 This patch enables the [Supplemental] IDL on CMake by changing the build
1449 flow of CMake as follows.
1451 - Previous build flow:
1452 foreach $idl (all IDL files) {
1453 generate-bindings.pl depends on $idl;
1454 generate-bindings.pl reads $idl;
1455 generate-bindings.pl generates .h and .cpp files for $idl;
1458 - New build flow (See the discussions in bug 72138 for more details):
1459 resolve-supplemental.pl depends on all IDL files;
1460 resolve-supplemental.pl reads all IDL files;
1461 resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
1462 resolve-supplemental.pl outputs supplemental_dependency.tmp;
1463 foreach $idl (all IDL files) {
1464 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
1465 generate-bindings.pl reads $idl;
1466 generate-bindings.pl reads supplemental_dependency.tmp;
1467 generate-bindings.pl generates .h and .cpp files for $idl,
1468 including all attributes in the IDL files that are implementing $idl;
1471 Tests: Confirm that build succeeds.
1472 http/tests/websocket/tests/*
1475 * UseJSC.cmake: Modified to reflect the new build flow as described above.
1476 * UseV8.cmake: Ditto.
1478 2011-12-30 Robert Hogan <robert@webkit.org>
1480 REGRESSION (r94492): Text is shifted to the right in some buttons in the Mac App Store
1481 https://bugs.webkit.org/show_bug.cgi?id=74723
1483 Reviewed by Dan Bernstein.
1485 Tests: fast/css/absolute-inline-alignment-2.html
1486 fast/css/absolute-inline-alignment.html
1488 Inline positioned elements in the leading spaces of an inline run need to align to
1489 adjacent text, so add them to the run as they're encountered.
1491 * rendering/RenderBlockLineLayout.cpp:
1492 (WebCore::LineInfo::LineInfo): Keep a count of positioned objects encountered when
1493 skipping leading whitespace.
1494 (WebCore::LineInfo::runsFromLeadingWhitespace):
1495 (WebCore::LineInfo::resetRunsFromLeadingWhitespace):
1496 (WebCore::LineInfo::incrementRunsFromLeadingWhitespace):
1497 (WebCore::RenderBlock::constructLine): Leading positioned objects should not be considered
1498 when deciding the number of runs in a line. Otherwise they would contribute towards line
1499 height themselves and prevent a free-standing BR following the positioned object from providing a full
1501 (WebCore::RenderBlock::layoutRunsAndFloatsInRange): Since a run containing line-breaks will enter
1502 skipLeadingWhitespace for each new line we reset the count every time so that the count of positioned
1503 objects we encounter only affects the line they appear on. This case is covered by
1504 fast/inline/styledEmptyInlinesWithBRs.html
1505 (WebCore::RenderBlock::LineBreaker::skipLeadingWhitespace): Add a run for each inline positioned object
1506 encountered in leading white space. Keep a count of them so that they can be excluded from
1507 the total number of runs in constructLine.
1509 2011-12-30 Raymond Liu <raymond.liu@intel.com>
1511 Remove unnecessary [Custom] attribute in CanvasRenderingContext2D.idl
1512 https://bugs.webkit.org/show_bug.cgi?id=75376
1514 Reviewed by Adam Barth.
1516 No new tests required.
1518 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
1519 * html/canvas/CanvasRenderingContext2D.idl:
1521 2011-12-30 Andreas Kling <awesomekling@apple.com>
1523 Cache and reuse the HTMLFormElement.elements collection.
1524 <http://webkit.org/b/75375>
1526 Reviewed by Anders Carlsson.
1528 Let HTMLFormElement::elements() cache the returned collection and tie it to the
1529 lifetime of the form. This reduces memory consumption by ~70 kB (on 64-bit) when
1530 viewing your average popular post on reddit.com.
1532 Test: fast/dom/form-elements-collection-idempotence.html
1535 * html/HTMLFormElement.h:
1536 * html/HTMLFormElement.cpp:
1537 (WebCore::HTMLFormElement::elements):
1539 Cache the HTMLFormCollection returned by elements() on the HTMLFormElement.
1540 Remove the per-form CollectionCache and let the collection manage that.
1542 * html/HTMLCollection.h:
1543 * html/HTMLCollection.cpp:
1544 (WebCore::HTMLCollection::HTMLCollection):
1545 (WebCore::HTMLCollection::create):
1547 Have the HTMLCollection constructor take a bool argument that decides whether
1548 we retain the base node pointer or not. This mechanism is a temporary measure
1549 until all collection types are owned by their respective base nodes.
1551 * html/HTMLFormCollection.h:
1552 * html/HTMLFormCollection.cpp:
1553 (WebCore::HTMLFormCollection::HTMLFormCollection):
1554 (WebCore::HTMLFormCollection::create):
1556 Tell the base class constructor to not retain the back-pointer to the form.
1558 2011-12-30 Andreas Kling <awesomekling@apple.com>
1560 Unreviewed buildfix after r103841.
1562 * inspector/InspectorMemoryAgent.cpp:
1564 2011-12-30 Andreas Kling <awesomekling@apple.com>
1566 CSSStyleDeclaration: Only allow setting parent rule at construction.
1567 <http://webkit.org/b/75391>
1569 Reviewed by Dan Bernstein.
1571 A CSSStyleDeclaration should only ever belong to one CSSRule. Enforce this
1572 at compile-time by replacing setParentRule(CSSRule*) with clearParentRule().
1574 * css/CSSFontFaceRule.cpp:
1575 (WebCore::CSSFontFaceRule::~CSSFontFaceRule):
1576 * css/CSSStyleDeclaration.h:
1577 (WebCore::CSSStyleDeclaration::clearParentRule):
1578 * css/CSSStyleRule.cpp:
1579 (WebCore::CSSStyleRule::~CSSStyleRule):
1580 * css/WebKitCSSKeyframeRule.cpp:
1581 (WebCore::WebKitCSSKeyframeRule::~WebKitCSSKeyframeRule):
1583 2011-12-30 Andreas Kling <awesomekling@apple.com>
1585 WebKitCSSKeyframeRule.style.parentRule should point to the keyframe rule.
1586 <http://webkit.org/b/75336>
1588 Reviewed by Antti Koivisto.
1590 Let CSS animation keyframe rules .style.parentRule point back to the keyframe
1591 board, rather than the keyframes rule containing it.
1593 Test: fast/css/css-keyframe-style-parentRule.html
1595 * css/CSSParser.cpp:
1596 (WebCore::CSSParser::createKeyframeRule):
1597 * css/WebKitCSSKeyframeRule.cpp:
1598 (WebCore::WebKitCSSKeyframeRule::setDeclaration):
1600 Set the CSSMutableStyleDeclaration's parent rule when creating it instead
1601 of in WebKitCSSKeyframeRule::setDeclaration(). Add assertion to make sure
1602 it's only called with declarations already parented to the keyframe rule.
1604 * css/WebKitCSSKeyframesRule.cpp:
1605 (WebCore::WebKitCSSKeyframesRule::~WebKitCSSKeyframesRule):
1606 (WebCore::WebKitCSSKeyframesRule::append):
1607 (WebCore::WebKitCSSKeyframesRule::deleteRule):
1609 Stop reparenting keyframe rules' style declarations to the keyframes rule.
1611 2011-12-30 Yury Semikhatsky <yurys@chromium.org>
1613 Web Inspector: use typed front-end API in the memory agent
1614 https://bugs.webkit.org/show_bug.cgi?id=75382
1616 Memory agent now uses generate C++ API for communicating to the front-end.
1618 Reviewed by Pavel Feldman.
1620 * inspector/InspectorMemoryAgent.cpp:
1621 (WebCore::DOMTreeStatistics::CounterVisitor::CounterVisitor):
1622 (WebCore::DOMTreeStatistics::CounterVisitor::counters):
1623 (WebCore::DOMTreeStatistics::CounterVisitor::visitNode):
1625 2011-12-30 Pavel Feldman <pfeldman@google.com>
1627 Web Inspector: migrate from "attached" to "compact" styles.
1628 https://bugs.webkit.org/show_bug.cgi?id=75381
1630 When front-end is docked to right, it should look like "detached", but is still "attached".
1631 Use "compact" mode instead of "attached" mode in the styles to mitigate it.
1633 Reviewed by Yury Semikhatsky.
1635 * inspector/front-end/SearchController.js:
1636 (WebInspector.SearchController.prototype.updateSearchLabel):
1637 * inspector/front-end/Toolbar.js:
1638 (WebInspector.Toolbar.prototype.set compact):
1639 (WebInspector.Toolbar.prototype._toolbarDragStart):
1640 (WebInspector.Toolbar.prototype._toolbarDrag):
1641 * inspector/front-end/helpScreen.css:
1642 (body.compact .help-window-outer):
1643 (body.compact .help-window-main):
1644 (body.compact .help-window-caption):
1645 (body.compact .help-close-button):
1646 (body.compact .help-content):
1647 * inspector/front-end/inspector.css:
1648 (body.compact #toolbar):
1649 (body.compact.port-qt #toolbar):
1650 (body.compact.inactive #toolbar):
1651 (body.compact #search-toolbar-label):
1652 (body.compact #toolbar-dropdown-arrow):
1653 (body.compact #search):
1654 (body.compact.port-qt .toolbar-item.close-left, body.compact.port-qt .toolbar-item.close-right):
1655 (body.compact #main):
1656 * inspector/front-end/inspector.js:
1657 (WebInspector.set attached):
1658 (WebInspector.get isCompactMode):
1659 (WebInspector.get _setCompactMode):
1660 (WebInspector._installDockToRight.listener.get if):
1661 (WebInspector._installDockToRight.listener):
1662 * inspector/front-end/inspectorCommon.css:
1663 (body.dock-to-right):
1664 (body.dock-to-right.inactive):
1666 2011-12-30 Sheriff Bot <webkit.review.bot@gmail.com>
1668 Unreviewed, rolling out r103794.
1669 http://trac.webkit.org/changeset/103794
1670 https://bugs.webkit.org/show_bug.cgi?id=75379
1672 the ASSERT is triggered by several tests (Requested by
1673 jchaffraix on #webkit).
1675 * rendering/RenderTable.cpp:
1676 (WebCore::RenderTable::RenderTable):
1677 (WebCore::RenderTable::addChild):
1678 (WebCore::RenderTable::layout):
1679 (WebCore::RenderTable::recalcSections):
1680 (WebCore::RenderTable::outerBorderAfter):
1681 (WebCore::RenderTable::sectionAbove):
1682 (WebCore::RenderTable::sectionBelow):
1683 * rendering/RenderTable.h:
1684 (WebCore::RenderTable::header):
1685 (WebCore::RenderTable::footer):
1686 (WebCore::RenderTable::firstBody):
1687 (WebCore::RenderTable::hasSections):
1688 (WebCore::RenderTable::topSection):
1690 2011-12-29 Pavel Feldman <pfeldman@google.com>
1692 Web Inspector: enable dock-to-right view (still need embedders to support it).
1693 https://bugs.webkit.org/show_bug.cgi?id=75360
1695 Reviewed by Yury Semikhatsky.
1697 * English.lproj/localizedStrings.js:
1698 * inspector/front-end/Settings.js:
1699 (WebInspector.Settings):
1700 * inspector/front-end/SettingsScreen.js:
1701 (WebInspector.SettingsScreen):
1702 * inspector/front-end/inspector.js:
1703 (WebInspector.set attached):
1704 (WebInspector._renderAsAttached.get return):
1705 (WebInspector._renderAsAttached):
1706 (WebInspector._installDockToRight.updateToolbar):
1708 2011-12-29 Raymond Liu <raymond.liu@intel.com>
1710 Use IDL overloads in AudioContext.idl for createBuffer
1711 https://bugs.webkit.org/show_bug.cgi?id=75293
1713 Reviewed by Adam Barth.
1715 No new tests required.
1717 * bindings/js/JSAudioContextCustom.cpp:
1718 * bindings/v8/custom/V8AudioContextCustom.cpp:
1719 * webaudio/AudioContext.cpp:
1720 (WebCore::AudioContext::createBuffer):
1721 * webaudio/AudioContext.h:
1722 * webaudio/AudioContext.idl:
1724 2011-12-29 Andreas Kling <awesomekling@apple.com>
1726 HTMLDivElement: Remove unnecessary variable in parseMappedAttribute().
1727 <http://webkit.org/b/75363>
1729 Reviewed by Daniel Bates.
1731 * html/HTMLDivElement.cpp:
1732 (WebCore::HTMLDivElement::parseMappedAttribute):
1734 2011-12-29 Andreas Kling <awesomekling@apple.com>
1736 HTMLParagraphElement: Remove unnecessary variable in parseMappedAttribute().
1737 <http://webkit.org/b/75362>
1739 Reviewed by Daniel Bates.
1741 * html/HTMLParagraphElement.cpp:
1742 (WebCore::HTMLParagraphElement::parseMappedAttribute):
1744 2011-12-29 Andreas Kling <awesomekling@apple.com>
1746 Use HashMap<OwnPtr> for Document's named item collection caches.
1747 <http://webkit.org/b/75335>
1749 Reviewed by Daniel Bates.
1752 (WebCore::Document::~Document):
1754 Remove now-unneeded deleteAllValues() loop.
1756 (WebCore::Document::nameCollectionInfo):
1758 Use add() instead of find()/add() to avoid one extra hash lookup.
1762 Switch the value type of m_nameCollectionInfo to use OwnPtr.
1764 2011-12-29 David Barton <dbarton@mathscribe.com>
1766 mfenced skips the first separator if the separators attribute contains multiple separators
1767 https://bugs.webkit.org/show_bug.cgi?id=57697
1769 Reviewed by Dan Bernstein.
1773 * rendering/mathml/RenderMathMLFenced.cpp:
1774 (WebCore::RenderMathMLFenced::addChild):
1775 - Thanks to Xun Sun <xun.sun@intel.com> for the off-by-one error fix.
1777 2011-12-29 Alexis Menard <alexis.menard@openbossa.org>
1779 Enable the [Supplemental] IDL on Qt.
1780 https://bugs.webkit.org/show_bug.cgi?id=75274
1782 Reviewed by Andreas Kling.
1784 http://trac.webkit.org/changeset/103783 broke the Qt SL bot.
1785 This patch fixes the problem by using 'tr' rather than 'sed' which
1786 seems to be more consistent between Mac and Linux.
1788 * DerivedSources.pri:
1790 2011-12-29 Vsevolod Vlasov <vsevik@chromium.org>
1792 Web Inspector: Scripts navigator should support incremental search by typing.
1793 https://bugs.webkit.org/show_bug.cgi?id=75349
1795 Reviewed by Pavel Feldman.
1797 * inspector/front-end/ScriptsNavigator.js:
1798 (WebInspector.ScriptsNavigator):
1799 (WebInspector.ScriptsNavigator.prototype.get defaultFocusedElement):
1800 (WebInspector.ScriptsNavigator.prototype.show):
1801 (WebInspector.ScriptsNavigator.prototype._reset):
1802 (WebInspector.NavigatorTreeOutline):
1803 (WebInspector.NavigatorTreeOutline.prototype.scriptTreeElements):
1804 (WebInspector.NavigatorTreeOutline.prototype.searchStarted):
1805 (WebInspector.NavigatorTreeOutline.prototype.searchFinished):
1806 (WebInspector.BaseNavigatorTreeElement.prototype.onreveal):
1807 (WebInspector.BaseNavigatorTreeElement.prototype.set titleText):
1808 (WebInspector.BaseNavigatorTreeElement.prototype.matchesSearchText):
1809 * inspector/front-end/inspector.css:
1810 (.outline-disclosure ol.search-match-not-found li.selected .selection):
1811 (.outline-disclosure ol.search-match-found li.selected):
1812 (.outline-disclosure ol.search-match-found li.selected *):
1813 (.outline-disclosure ol.search-match-found li.parent.selected::before):
1814 (.outline-disclosure ol.search-match-found li.parent.expanded.selected::before):
1815 * inspector/front-end/scriptsPanel.css:
1816 (#scripts-navigator-tree-search-box):
1817 (#scripts-navigator-tree-search-box.visible):
1818 (#scripts-navigator-tree-search-box > input):
1819 (.scripts.panel .navigator .search-match-found li.selected .selection):
1820 (.scripts.panel .navigator .search-match-not-found li.selected .selection):
1821 (.scripts.panel .navigator .searching li.selected .selection):
1822 * inspector/front-end/treeoutline.js:
1824 (TreeOutline.prototype._treeKeyPress):
1825 (TreeOutline.prototype._startSearch.focusSearchInput):
1826 (TreeOutline.prototype._startSearch):
1827 (TreeOutline.prototype._searchTextChanged):
1828 (TreeOutline.prototype._showSearchMatchElement):
1829 (TreeOutline.prototype._searchInputKeyDown):
1830 (TreeOutline.prototype._nextSearchMatch):
1831 (TreeOutline.prototype._previousSearchMatch):
1832 (TreeOutline.prototype._searchInputBlur):
1833 (TreeOutline.prototype._searchFinished):
1834 (TreeOutline.prototype.stopSearch):
1836 2011-12-29 Vsevolod Vlasov <vsevik@chromium.org>
1838 Web Inspector: Scripts navigator should trim long file names and show full url in tooltip.
1839 https://bugs.webkit.org/show_bug.cgi?id=75343
1841 Reviewed by Pavel Feldman.
1843 Test: inspector/debugger/ui-source-code-display-name.html
1845 * inspector/front-end/ScriptsNavigator.js:
1846 (WebInspector.ScriptsNavigator.prototype.setScriptSourceIsDirty):
1847 * inspector/front-end/ScriptsPanel.js:
1848 (WebInspector.ScriptsPanel.EditorContainer.prototype.showSourceFrame):
1849 (WebInspector.ScriptsPanel.EditorContainer.prototype.replaceSourceFrames):
1850 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.showSourceFrame):
1851 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.replaceSourceFrames):
1852 * inspector/front-end/TabbedEditorContainer.js:
1853 (WebInspector.TabbedEditorContainer):
1854 (WebInspector.TabbedEditorContainer.prototype._appendSourceFrameTab):
1855 (WebInspector.TabbedEditorContainer.prototype._tabClosed):
1856 (WebInspector.TabbedEditorContainer.prototype._replaceSourceFrameTab.get if):
1857 (WebInspector.TabbedEditorContainer.prototype._replaceSourceFrameTab):
1858 (WebInspector.TabbedEditorContainer.prototype.get replaceSourceFrames):
1859 (WebInspector.TabbedEditorContainer.prototype.reset):
1860 * inspector/front-end/TabbedPane.js:
1861 (WebInspector.TabbedPane.prototype.appendTab):
1862 (WebInspector.TabbedPane.prototype.changeTabTooltip):
1863 (WebInspector.TabbedPaneTab):
1864 (WebInspector.TabbedPaneTab.prototype.get tooltip):
1865 (WebInspector.TabbedPaneTab.prototype.set tooltip):
1866 (WebInspector.TabbedPaneTab.prototype._createTabElement):
1867 * inspector/front-end/UISourceCode.js:
1868 (WebInspector.UISourceCode.prototype._parseURL):
1869 * inspector/front-end/utilities.js:
1872 2011-12-29 Alexis Menard <alexis.menard@openbossa.org>
1874 getComputedStyle for margin is not implemented.
1875 https://bugs.webkit.org/show_bug.cgi?id=75358
1877 Reviewed by Andreas Kling.
1879 Implement getComputedStyle for margin.
1881 Test: fast/css/getComputedStyle/getComputedStyle-margin-shorthand.html
1883 * css/CSSComputedStyleDeclaration.cpp:
1884 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1886 2011-12-29 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
1888 Use HashMap<OwnPtr> in RenderSVGResourcePattern
1889 https://bugs.webkit.org/show_bug.cgi?id=75361
1891 Reviewed by Andreas Kling.
1893 * rendering/svg/RenderSVGResourcePattern.cpp:
1894 (WebCore::RenderSVGResourcePattern::removeAllClientsFromCache):
1895 (WebCore::RenderSVGResourcePattern::removeClientFromCache):
1896 (WebCore::RenderSVGResourcePattern::applyResource): use HashMap::add() to avoid
1897 looking up the hash twice.
1898 * rendering/svg/RenderSVGResourcePattern.h: rename m_pattern to m_patternMap to
1899 improve readability a little bit.
1901 2011-12-29 Alexis Menard <alexis.menard@openbossa.org>
1903 getComputedStyle for padding is not implemented.
1904 https://bugs.webkit.org/show_bug.cgi?id=75352
1906 Reviewed by Andreas Kling.
1908 Implement getComputedStyle for padding shorthand property.
1910 Test: fast/css/getComputedStyle/getComputedStyle-padding-shorthand.html
1912 * css/CSSComputedStyleDeclaration.cpp:
1913 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1915 2011-12-29 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
1917 Use HashMap<OwnPtr> in OriginAccessMap
1918 https://bugs.webkit.org/show_bug.cgi?id=75327
1920 Reviewed by Andreas Kling.
1922 * page/SecurityPolicy.cpp:
1923 (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
1924 (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
1925 (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
1927 2011-12-29 Pavel Podivilov <podivilov@chromium.org>
1929 Web Inspector: support sourceMappingURL magic comment.
1930 https://bugs.webkit.org/show_bug.cgi?id=75356
1932 Reviewed by Pavel Feldman.
1934 * inspector/ContentSearchUtils.cpp:
1935 (WebCore::ContentSearchUtils::findSourceMapURL):
1936 * inspector/ContentSearchUtils.h:
1937 * inspector/InspectorDebuggerAgent.cpp:
1938 (WebCore::InspectorDebuggerAgent::sourceMapURLForScript):
1940 2011-12-29 Alexander Pavlov <apavlov@chromium.org>
1942 Web Inspector: Suggest pop-over doesn't hide on tab switch
1943 https://bugs.webkit.org/show_bug.cgi?id=73611
1945 Reviewed by Pavel Feldman.
1947 * inspector/front-end/ConsoleView.js:
1948 (WebInspector.ConsoleView.prototype.willHide):
1949 * inspector/front-end/TextPrompt.js:
1950 (WebInspector.TextPrompt.prototype.complete):
1951 (WebInspector.TextPrompt.prototype._completionsReady):
1952 (WebInspector.TextPrompt.prototype.acceptSuggestion):
1953 (WebInspector.TextPrompt.prototype.hideSuggestBox):
1954 (WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
1956 2011-12-28 Alexander Pavlov <apavlov@chromium.org>
1958 Web Inspector: Implement CSS selector profiler
1959 https://bugs.webkit.org/show_bug.cgi?id=74004
1961 Reviewed by Pavel Feldman.
1963 This implementation of CSS selector profiler measures the total time required to match a certain selector
1964 against DOM nodes and apply the style declaration properties to the particular element,
1965 as well as the number of selector matches (i.e. the number of nodes that matched the selector.)
1966 The results are approximate due to internal matching algorithm optimizations (shared styles et al.)
1967 Multiple selectors with the same selectorText are coalesced into a single record.
1969 * English.lproj/localizedStrings.js:
1971 * WebCore.vcproj/WebCore.vcproj:
1972 * inspector/compile-front-end.sh:
1973 * inspector/front-end/CSSSelectorProfileView.js: Added.
1974 (WebInspector.CSSSelectorDataGridNode):
1975 (WebInspector.CSSSelectorDataGridNode.prototype.get rawData):
1976 (WebInspector.CSSSelectorProfileView):
1977 (WebInspector.CSSSelectorProfileView.prototype.get statusBarItems):
1978 (WebInspector.CSSSelectorProfileView.prototype.get profile):
1979 (WebInspector.CSSSelectorProfileView.prototype.set profile):
1980 (WebInspector.CSSSelectorProfileView.prototype._createProfileNodes):
1981 (WebInspector.CSSSelectorProfileView.prototype.rebuildGridItems):
1982 (WebInspector.CSSSelectorProfileView.prototype.refreshData):
1983 (WebInspector.CSSSelectorProfileView.prototype.refreshShowAsPercents):
1984 (WebInspector.CSSSelectorProfileView.prototype._sortProfile.get selectorComparator):
1985 (WebInspector.CSSSelectorProfileView.prototype._sortProfile.timeComparator):
1986 (WebInspector.CSSSelectorProfileView.prototype._sortProfile.matchesComparator):
1987 (WebInspector.CSSSelectorProfileView.prototype._sortProfile):
1988 (WebInspector.CSSSelectorProfileType):
1989 (WebInspector.CSSSelectorProfileType.prototype.get buttonTooltip):
1990 (WebInspector.CSSSelectorProfileType.prototype.buttonClicked):
1991 (WebInspector.CSSSelectorProfileType.prototype.get treeItemTitle):
1992 (WebInspector.CSSSelectorProfileType.prototype.get description):
1993 (WebInspector.CSSSelectorProfileType.prototype.reset):
1994 (WebInspector.CSSSelectorProfileType.prototype.isRecordingProfile):
1995 (WebInspector.CSSSelectorProfileType.prototype.setRecordingProfile):
1996 (WebInspector.CSSSelectorProfileType.prototype.startRecordingProfile):
1997 (WebInspector.CSSSelectorProfileType.prototype.stopRecordingProfile):
1998 (WebInspector.CSSSelectorProfileType.prototype.createSidebarTreeElementForProfile):
1999 (WebInspector.CSSSelectorProfileType.prototype.createView):
2000 * inspector/front-end/DetailedHeapshotView.js:
2001 * inspector/front-end/ProfileView.js:
2002 * inspector/front-end/ProfilesPanel.js:
2003 (WebInspector.ProfileType.prototype.reset):
2004 (WebInspector.ProfilesPanel.prototype._reset):
2005 (WebInspector.ProfilesPanel.prototype.addProfileHeader):
2006 (WebInspector.ProfilesPanel.prototype._removeTemporaryProfile):
2007 (WebInspector.ProfilesPanel.prototype.setRecordingProfile):
2008 (WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):
2009 (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
2010 (WebInspector.ProfilerDispatcher.prototype.addProfileHeader):
2011 * inspector/front-end/WebKit.qrc:
2012 * inspector/front-end/inspector.html:
2013 * inspector/front-end/profilesPanel.css:
2015 2011-12-29 Sheriff Bot <webkit.review.bot@gmail.com>
2017 Unreviewed, rolling out r103798.
2018 http://trac.webkit.org/changeset/103798
2019 https://bugs.webkit.org/show_bug.cgi?id=75353
2021 some small scrollbar differences are making the tests fail on
2022 several platforms (Requested by jchaffraix on #webkit).
2024 * rendering/RenderLayer.cpp:
2025 (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
2027 2011-12-29 Alexander Pavlov <apavlov@chromium.org>
2029 Web Inspector: Focus of the DOM tree is not restored when switching to the Elements panel
2030 https://bugs.webkit.org/show_bug.cgi?id=75351
2032 Reviewed by Yury Semikhatsky.
2034 * inspector/front-end/ElementsPanel.js:
2035 (WebInspector.ElementsPanel.prototype.wasShown):
2037 2011-12-29 Julien Chaffraix <jchaffraix@webkit.org>
2039 REGRESSION (r93614): Safari Reader doesn't repaint correctly when scrolling
2040 https://bugs.webkit.org/show_bug.cgi?id=67100
2042 Reviewed by Dan Bernstein.
2044 Tests: fast/layers/scroll-with-transform-composited-layer-expected.html
2045 fast/layers/scroll-with-transform-composited-layer.html
2046 fast/layers/scroll-with-transform-layer-expected.html
2047 fast/layers/scroll-with-transform-layer.html
2049 The regression came from a previous optimization that was wrongly kept after r93614.
2051 * rendering/RenderLayer.cpp:
2052 (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
2053 Remove the early return for transformed layer. This change worked as we used
2054 to call updateLayerPositions from scrollTo which would call updateLayerPosition on
2055 all our descendants. After r93614, this is no longer the case and we explicitely need
2056 to call updateLayerPosition on our descendants from updateLayerPositionsAfterScroll.
2058 2011-12-29 Alexander Pavlov <apavlov@chromium.org>
2060 Web Inspector: Tree views can be collapsed/hidden using the keyboard arrows
2061 https://bugs.webkit.org/show_bug.cgi?id=46272
2063 Reviewed by Yury Semikhatsky.
2065 WebInspector.SidebarSectionTreeElement which is not selectable has also been made non-collapsible
2066 and expanded by default.
2068 * inspector/front-end/AuditsPanel.js:
2069 (WebInspector.AuditsPanel):
2070 * inspector/front-end/ProfilesPanel.js:
2071 (WebInspector.ProfilesPanel.prototype._registerProfileType):
2072 * inspector/front-end/SidebarTreeElement.js:
2073 (WebInspector.SidebarSectionTreeElement):
2074 (WebInspector.SidebarSectionTreeElement.prototype.selectable.false.collapse):
2075 * inspector/front-end/TimelinePanel.js:
2076 (WebInspector.TimelinePanel):
2078 2011-12-29 Pavel Feldman <pfeldman@google.com>
2080 Web Inspector: [chromium] pass dock to side request to the embedder.
2081 https://bugs.webkit.org/show_bug.cgi?id=75344
2083 Reviewed by Yury Semikhatsky.
2085 I'd like to enable dock-to-right for the front-end window. This is a background work
2086 to pass control flow from the front-end to the front-end host.
2088 * inspector/InspectorFrontendClient.h:
2089 * inspector/InspectorFrontendClientLocal.h:
2090 (WebCore::InspectorFrontendClientLocal::requestSetDockSide):
2091 * inspector/InspectorFrontendHost.cpp:
2092 (WebCore::InspectorFrontendHost::requestSetDockSide):
2093 * inspector/InspectorFrontendHost.h:
2094 * inspector/InspectorFrontendHost.idl:
2095 * inspector/front-end/InspectorFrontendHostStub.js:
2096 (.WebInspector.InspectorFrontendHostStub.prototype.requestAttachWindow):
2097 (.WebInspector.InspectorFrontendHostStub.prototype.requestDetachWindow):
2098 (.WebInspector.InspectorFrontendHostStub.prototype.requestSetDockSide):
2100 2011-12-28 Pavel Podivilov <podivilov@chromium.org>
2102 Web Inspector: add "enable source maps" checkbox setting.
2103 https://bugs.webkit.org/show_bug.cgi?id=75311
2105 Reviewed by Pavel Feldman.
2107 When "enable source maps" is on, all auto detected source maps are silently applied.
2109 * English.lproj/localizedStrings.js:
2110 * inspector/front-end/DebuggerPresentationModel.js:
2111 * inspector/front-end/JavaScriptSourceFrame.js:
2112 (WebInspector.JavaScriptSourceFrame.prototype.populateTextAreaContextMenu):
2113 * inspector/front-end/RawSourceCode.js:
2114 (WebInspector.RawSourceCode):
2115 (WebInspector.RawSourceCode.prototype.setFormatted):
2116 (WebInspector.RawSourceCode.prototype._updateSourceMapping.didCreateSourceMapping):
2117 (WebInspector.RawSourceCode.prototype._updateSourceMapping):
2118 (WebInspector.RawSourceCode.prototype._createUISourceCode):
2119 * inspector/front-end/Settings.js:
2120 (WebInspector.Settings):
2121 * inspector/front-end/SettingsScreen.js:
2122 (WebInspector.SettingsScreen):
2123 * inspector/front-end/UISourceCode.js:
2124 (WebInspector.UISourceCode):
2125 * inspector/front-end/inspector.js:
2126 (WebInspector._toolbarItemClicked):
2128 2011-12-29 Julien Chaffraix <jchaffraix@webkit.org>
2130 Tighten our checks for needsSectionRecalc in RenderTable
2131 https://bugs.webkit.org/show_bug.cgi?id=73972
2133 Reviewed by Adam Barth.
2135 Refactoring covered under the new tests.
2137 Now most of the functions use the header, first body and footer's
2138 getters that checks if we need a section recalculation. The only
2139 exceptions are addChild and recalcSections as they can be called
2142 * rendering/RenderTable.cpp:
2143 (WebCore::RenderTable::layout):
2144 (WebCore::RenderTable::outerBorderAfter):
2145 (WebCore::RenderTable::sectionAbove):
2146 (WebCore::RenderTable::sectionBelow):
2147 Updated the previous functions to use the sections' getters.
2149 (WebCore::RenderTable::RenderTable):
2150 (WebCore::RenderTable::addChild):
2151 (WebCore::RenderTable::recalcSections):
2152 Update the previous functions after the 2 renames
2155 * rendering/RenderTable.h:
2156 (WebCore::RenderTable::header):
2157 (WebCore::RenderTable::footer):
2158 (WebCore::RenderTable::firstBody):
2159 Added some ASSERT here. Also renamed m_head to m_header
2160 and m_foot to m_footer to match the getter and to avoid
2161 unneeded abbreviation.
2163 (WebCore::RenderTable::hasSections):
2164 (WebCore::RenderTable::topSection):
2165 Updated the previous functions to use the section getters.
2167 2011-12-28 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
2169 Use HashMap<OwnPtr> for UserScriptMap and UserStyleSheetMap
2170 https://bugs.webkit.org/show_bug.cgi?id=75323
2172 Reviewed by Darin Adler.
2175 (WebCore::Document::pageGroupUserSheets):
2176 * page/PageGroup.cpp:
2177 (WebCore::PageGroup::addUserScriptToWorld):
2178 (WebCore::PageGroup::addUserStyleSheetToWorld):
2179 (WebCore::PageGroup::removeUserScriptFromWorld):
2180 (WebCore::PageGroup::removeUserStyleSheetFromWorld): fix a small mistake in
2181 previous code. Now the entry for world is removed (and deleted) only if its
2182 stylesheet vector is empty.
2183 (WebCore::PageGroup::removeUserScriptsFromWorld):
2184 (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
2185 (WebCore::PageGroup::removeAllUserContent):
2186 * page/UserScriptTypes.h:
2187 * page/UserStyleSheetTypes.h:
2189 2011-12-28 Andreas Kling <awesomekling@apple.com>
2191 Reduce memory used by NamedNodeMap.
2192 <http://webkit.org/b/75333>
2194 Reviewed by Sam Weinig.
2196 Give NamedNodeMap's attribute vector an inline capacity of 4. The vast majority
2197 of elements have <= 4 attributes, and if they don't have any we normally don't
2198 allocate an attribute map at all.
2200 This reduces memory consumption by 1.2MB (on 64-bit) when loading the full HTML5
2201 spec at <http://whatwg.org/c>.
2203 * dom/NamedNodeMap.h:
2205 2011-12-28 Andreas Kling <awesomekling@apple.com>
2207 Reduce memory used by SpaceSplitString.
2208 <http://webkit.org/b/75315>
2210 Reviewed by Sam Weinig.
2212 Split the string upon creation instead of waiting until it's accessed.
2213 This allows us to get rid of all data members except the substring vector.
2214 Since we're storing AtomicStrings, this is way more memory-efficient than
2215 the previous implementation in the majority of cases.
2217 Also reduced the inline capcity of the vector to 2 (from 8), after testing
2218 showed this to cover 90% of the cases on the Alexa top sites.
2220 All in all this reduces memory consumption by 1.1MB (on 64-bit) when
2221 loading the full HTML5 spec at <http://whatwg.org/c>. On that same page,
2222 less than 2ms is spent (on my MBP) splitting the ~20000 strings.
2224 * dom/SpaceSplitString.cpp:
2225 (WebCore::SpaceSplitStringData::createVector):
2226 (WebCore::SpaceSplitStringData::containsAll):
2227 (WebCore::SpaceSplitStringData::remove):
2228 * dom/SpaceSplitString.h:
2229 (WebCore::SpaceSplitStringData::SpaceSplitStringData):
2230 (WebCore::SpaceSplitStringData::contains):
2231 (WebCore::SpaceSplitStringData::size):
2232 (WebCore::SpaceSplitStringData::operator[]):
2234 2011-12-28 ChangSeok Oh <shivamidow@gmail.com>
2236 [GTK] Fix compilation issue when selecting opengl for Accelerated compositing
2237 https://bugs.webkit.org/show_bug.cgi?id=75309
2239 Reviewed by Martin Robinson.
2241 Add TextureMapperGL and TextureMapperGLCairo files.
2242 They define new classes required to implement TextureMapperGL for GTK port.
2244 No new tests required.
2246 * GNUmakefile.list.am:
2247 * platform/graphics/cairo/TextureMapperGLCairo.cpp: Added.
2248 (WebCore::BGRA32PremultimpliedBufferCairo::BGRA32PremultimpliedBufferCairo):
2249 (WebCore::BGRA32PremultimpliedBufferCairo::~BGRA32PremultimpliedBufferCairo):
2250 (WebCore::BGRA32PremultimpliedBufferCairo::beginPaint):
2251 (WebCore::BGRA32PremultimpliedBufferCairo::data):
2252 (WebCore::BGRA32PremultimpliedBufferCairo::endPaint):
2253 (WebCore::uidForImage):
2254 (WebCore::BGRA32PremultimpliedBuffer::create):
2255 * platform/graphics/cairo/TextureMapperGLCairo.h: Added.
2257 2011-12-28 Sheriff Bot <webkit.review.bot@gmail.com>
2259 Unreviewed, rolling out r103782.
2260 http://trac.webkit.org/changeset/103782
2261 https://bugs.webkit.org/show_bug.cgi?id=75328
2263 broke origin-whitelisting-removal.html (Requested by kling on
2266 * page/SecurityPolicy.cpp:
2267 (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
2268 (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
2269 (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
2271 2011-12-28 Kentaro Hara <haraken@chromium.org>
2273 Enable the [Supplemental] IDL on Qt
2274 https://bugs.webkit.org/show_bug.cgi?id=75274
2276 Reviewed by Adam Barth.
2278 This patch enables the [Supplemental] IDL on Qt by changing the build
2279 flow of Qt as follows.
2281 - Previous build flow:
2282 foreach $idl (all IDL files) {
2283 generate-bindings.pl depends on $idl;
2284 generate-bindings.pl reads $idl;
2285 generate-bindings.pl generates .h and .cpp files for $idl;
2288 - New build flow (See the discussions in bug 72138 for more details):
2289 resolve-supplemental.pl depends on all IDL files;
2290 resolve-supplemental.pl reads all IDL files;
2291 resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
2292 resolve-supplemental.pl outputs supplemental_dependency.tmp;
2293 foreach $idl (all IDL files) {
2294 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
2295 generate-bindings.pl reads $idl;
2296 generate-bindings.pl reads supplemental_dependency.tmp;
2297 generate-bindings.pl generates .h and .cpp files for $idl,
2298 including all attributes in the IDL files that are implementing $idl;
2301 Tests: Confirm that build succeeds.
2302 http/tests/websocket/tests/*
2304 * DerivedSources.pri: Described the above build flow.
2306 2011-12-28 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
2308 Use HashMap<OwnPtr> in OriginAccessMap
2309 https://bugs.webkit.org/show_bug.cgi?id=75327
2311 Reviewed by Andreas Kling.
2313 * page/SecurityPolicy.cpp:
2314 (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
2315 (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
2316 (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
2318 2011-12-28 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
2320 Use HashMap<OwnPtr> for ProgressTracker's items
2321 https://bugs.webkit.org/show_bug.cgi?id=75326
2323 Reviewed by Andreas Kling.
2325 * loader/ProgressTracker.cpp:
2326 (WebCore::ProgressTracker::~ProgressTracker): although is empty, the destructor was
2327 kept so in the header file we can forward declare ProgressItem and use in an OwnPtr.
2328 (WebCore::ProgressTracker::reset):
2329 (WebCore::ProgressTracker::incrementProgress):
2330 (WebCore::ProgressTracker::completeProgress): removed a useless assignment to item
2331 member just before it is deleted.
2332 * loader/ProgressTracker.h:
2334 2011-12-28 Alexis Menard <alexis.menard@openbossa.org>
2336 getComputedStyle for border-color is not implemented.
2337 https://bugs.webkit.org/show_bug.cgi?id=75324
2339 Reviewed by Andreas Kling.
2341 Implement getComputedStyle for border-color.
2343 Test: fast/css/getComputedStyle/getComputedStyle-border-color-shorthand.html
2345 * css/CSSComputedStyleDeclaration.cpp:
2346 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2348 2011-12-28 Darin Adler <darin@apple.com>
2350 Use OwnPtr to handle lifetime and deletion of FontFace objects
2351 https://bugs.webkit.org/show_bug.cgi?id=75221
2353 Reviewed by Daniel Bates.
2355 * css/CSSFontFaceSource.cpp:
2356 (WebCore::CSSFontFaceSource::getFontData): Use add instead of get/set to read and
2357 then later fill a cache. Use new version of registerCustomFont that takes PassOwnPtr.
2358 * css/CSSSegmentedFontFace.cpp:
2359 (WebCore::CSSSegmentedFontFace::getFontData): Ditto.
2362 (WebCore::Document::registerCustomFont): Take a PassOwnPtr instead of raw pointer.
2363 * dom/Document.h: Ditto.
2365 2011-12-28 Adam Barth <abarth@webkit.org>
2367 "Fake" insertion mode in HTMLTreeBuilder doesn't do anything
2368 https://bugs.webkit.org/show_bug.cgi?id=75322
2370 Reviewed by Darin Adler.
2372 This machinery isn't needed anymore now that we're using the new
2373 foreign content hotness.
2375 * html/parser/HTMLTreeBuilder.cpp:
2376 * html/parser/HTMLTreeBuilder.h:
2377 (WebCore::HTMLTreeBuilder::setInsertionMode):
2379 2011-12-28 Alexis Menard <alexis.menard@openbossa.org>
2381 getComputedStyle for border-style is not implemented.
2382 https://bugs.webkit.org/show_bug.cgi?id=75312
2384 Reviewed by Andreas Kling.
2386 Implement getComputedStyle for border-style.
2388 Test: fast/css/getComputedStyle/getComputedStyle-border-style-shorthand.html
2390 * css/CSSComputedStyleDeclaration.cpp:
2391 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2393 2011-12-28 Alexis Menard <alexis.menard@openbossa.org>
2395 getComputedStyle for border-bottom, border-top, border-left, border-right is not implemented.
2396 https://bugs.webkit.org/show_bug.cgi?id=74743
2398 Reviewed by Tony Chang.
2400 Implement getComputedStyle for border-top, border-bottom, border-right, border-left.
2402 Test: fast/css/getComputedStyle/getComputedStyle-border-shorthand.html
2404 * css/CSSComputedStyleDeclaration.cpp:
2405 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2406 (WebCore::CSSComputedStyleDeclaration::getCSSPropertyValuesForShorthandProperties):
2407 * css/CSSComputedStyleDeclaration.h:
2409 2011-12-28 Robert Hogan <robert@webkit.org>
2411 Inline flow not learning height of all text descendants
2412 https://bugs.webkit.org/show_bug.cgi?id=75305
2414 Reviewed by Dan Bernstein.
2416 Tests: fast/inline/nested-text-descendants-expected.html
2417 fast/inline/nested-text-descendants.html
2419 The root inline box would only learn it had text descendants if its first grandchild
2420 was text. It wasn't informed of subsequent text grandchildren so could not factor them
2421 into its calculation of the line height.
2422 To fix this, propagate the existence of a text descendant to the root inline box
2423 by walking up through the text child's ancestors.
2425 * rendering/InlineFlowBox.cpp:
2426 (WebCore::setHasTextDescendantsOnAncestors):
2427 (WebCore::InlineFlowBox::addToLine):
2428 * rendering/InlineFlowBox.h:
2429 (WebCore::InlineFlowBox::setHasTextDescendants):
2431 2011-12-28 Sheriff Bot <webkit.review.bot@gmail.com>
2433 Unreviewed, rolling out r103620.
2434 http://trac.webkit.org/changeset/103620
2435 https://bugs.webkit.org/show_bug.cgi?id=75316
2437 Causes many crashes (Requested by abarth on #webkit).
2439 * loader/FrameLoaderClient.h:
2440 * page/DOMWindow.cpp:
2441 (WebCore::DOMWindow::postMessageTimerFired):
2443 2011-12-28 Alexander Pavlov <apavlov@chromium.org>
2445 [V8][Chromium] 'randomString' in document.body.style always returns true
2446 https://bugs.webkit.org/show_bug.cgi?id=75313
2448 Reviewed by Adam Barth.
2450 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
2451 (WebCore::V8CSSStyleDeclaration::namedPropertyQuery):
2453 2011-12-28 Vsevolod Vlasov <vsevik@chromium.org>
2455 Web Inspector: Add domain.png to WebCore.gypi / WebKit.qrc.
2456 https://bugs.webkit.org/show_bug.cgi?id=75310
2458 Reviewed by Pavel Feldman.
2461 * inspector/front-end/WebKit.qrc:
2463 2011-12-28 Vsevolod Vlasov <vsevik@chromium.org>
2465 Web Inspector: ExperimentsSettings causes warning on chromium when reading localizedStrings.
2466 https://bugs.webkit.org/show_bug.cgi?id=75299
2468 Reviewed by Pavel Feldman.
2470 * inspector/front-end/Settings.js:
2471 (WebInspector.ExperimentsSettings):
2472 * inspector/front-end/SettingsScreen.js:
2473 (WebInspector.SettingsScreen.prototype._createExperimentCheckbox):
2475 2011-12-28 Vsevolod Vlasov <vsevik@chromium.org>
2477 Web Inspector: Scripts panel: add debug sidebar resizer to TabbedEditorContainer.
2478 https://bugs.webkit.org/show_bug.cgi?id=75300
2480 Reviewed by Pavel Feldman.
2482 * inspector/front-end/ScriptsPanel.js:
2483 * inspector/front-end/scriptsPanel.css:
2484 (#scripts-debug-sidebar-resizer-widget):
2486 2011-12-28 Alexander Pavlov <apavlov@chromium.org>
2488 Web Inspector: Introduce a Profiler launcher view similar to that in the Audits panel
2489 https://bugs.webkit.org/show_bug.cgi?id=75228
2491 Reviewed by Pavel Feldman.
2493 * English.lproj/localizedStrings.js:
2495 * WebCore.vcproj/WebCore.vcproj:
2496 * inspector/front-end/AuditLauncherView.js:
2497 (WebInspector.AuditLauncherView):
2498 * inspector/front-end/AuditsPanel.js:
2499 (WebInspector.AuditsPanel):
2500 * inspector/front-end/DetailedHeapshotView.js:
2501 (WebInspector.DetailedHeapshotProfileType):
2502 (WebInspector.DetailedHeapshotProfileType.prototype.get treeItemTitle):
2503 (WebInspector.DetailedHeapshotProfileType.prototype.get description):
2504 * inspector/front-end/ProfileLauncherView.js: Added.
2505 (WebInspector.ProfileLauncherView):
2506 (WebInspector.ProfileLauncherView.prototype.setUpEventListeners):
2507 (WebInspector.ProfileLauncherView.prototype.addProfileType):
2508 (WebInspector.ProfileLauncherView.prototype._controlButtonClicked):
2509 (WebInspector.ProfileLauncherView.prototype._updateControls):
2510 (WebInspector.ProfileLauncherView.prototype._profileTypeChanged):
2511 (WebInspector.ProfileLauncherView.prototype._onProfileStarted):
2512 (WebInspector.ProfileLauncherView.prototype._onProfileFinished):
2513 * inspector/front-end/ProfileView.js:
2514 (WebInspector.CPUProfileType):
2515 (WebInspector.CPUProfileType.prototype.get treeItemTitle):
2516 (WebInspector.CPUProfileType.prototype.get description):
2517 * inspector/front-end/ProfilesPanel.js:
2518 (WebInspector.ProfileType.prototype.get treeItemTitle):
2519 (WebInspector.ProfileType.prototype.get description):
2520 (WebInspector.ProfilesPanel.prototype.get statusBarItems):
2521 (WebInspector.ProfilesPanel.prototype.toggleRecordButton):
2522 (WebInspector.ProfilesPanel.prototype._onProfileTypeSelected):
2523 (WebInspector.ProfilesPanel.prototype._reset):
2524 (WebInspector.ProfilesPanel.prototype._showLauncherView):
2525 (WebInspector.ProfilesPanel.prototype._registerProfileType):
2526 (WebInspector.ProfilesPanel.prototype._addProfileHeader):
2527 (WebInspector.ProfilesPanel.prototype._updateInterface):
2528 (WebInspector.ProfileTypeTreeElement):
2529 (WebInspector.ProfileTypeTreeElement.prototype.collapse):
2530 (WebInspector.ProfilesSidebarTreeElement):
2531 (WebInspector.ProfilesSidebarTreeElement.prototype.onattach):
2532 (WebInspector.ProfilesSidebarTreeElement.prototype.onselect):
2533 (WebInspector.ProfilesSidebarTreeElement.prototype.get selectable):
2534 (WebInspector.ProfilesSidebarTreeElement.prototype.refresh):
2535 * inspector/front-end/WebKit.qrc:
2536 * inspector/front-end/WelcomeView.js: Removed.
2537 * inspector/front-end/auditsPanel.css:
2538 (.audit-launcher-view .audit-launcher-view-content):
2539 (.audit-launcher-view div.button-container):
2540 (.panel-enabler-view.audit-launcher-view label):
2541 (.panel-enabler-view.audit-launcher-view label.disabled):
2542 * inspector/front-end/inspector.html:
2543 * inspector/front-end/panelEnablerView.css:
2544 (.panel-enabler-view img):
2545 (.panel-enabler-view .flexible-space):
2546 (.panel-enabler-view button:not(.status-bar-item)):
2547 (body.inactive .panel-enabler-view button, .panel-enabler-view button:disabled):
2548 (.panel-enabler-view input[type="radio"]):
2549 (.panel-enabler-view input[type="radio"]:active:not(:disabled)):
2550 (.panel-enabler-view input[type="radio"]:checked):
2551 (.panel-enabler-view input[type="radio"]:checked:active):
2552 * inspector/front-end/profilesPanel.css:
2553 (.profile-launcher-view-tree-item > .icon):
2554 (.profile-launcher-view-content):
2555 (.profile-launcher-view-content h1):
2556 (.panel-enabler-view.profile-launcher-view form):
2557 (.panel-enabler-view.profile-launcher-view label):
2558 (.profile-launcher-view-content p):
2559 (.panel-enabler-view.profile-launcher-view button:not(.status-bar-item)):
2560 (.profile-launcher-view-content button.running:not(.status-bar-item)):
2561 (body.inactive .profile-launcher-view-content button.running:not(.status-bar-item)):
2563 2011-12-28 Sheriff Bot <webkit.review.bot@gmail.com>
2565 Unreviewed, rolling out r103763.
2566 http://trac.webkit.org/changeset/103763
2567 https://bugs.webkit.org/show_bug.cgi?id=75307
2569 "Compilation fails on Snow Leopard" (Requested by yurys on
2572 * inspector/CodeGeneratorInspector.py:
2574 (create_ad_hoc_type_declaration.Helper):
2575 (CodeGenerator.generate_type_builder):
2576 (get_in_c_type_text):
2578 2011-12-28 Peter Rybin <peter.rybin@gmail.com>
2580 Web Inspector: CodeGeneratorInspector.py: generate enum types.
2581 https://bugs.webkit.org/show_bug.cgi?id=74954
2583 Reviewed by Yury Semikhatsky.
2585 Internal map of string contants is created. C enums are created for
2588 * inspector/CodeGeneratorInspector.py:
2589 (EnumConstants.add_constant):
2591 (EnumConstants.get_enum_constant_code):
2592 (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
2593 (TypeBindings.create_type_declaration_.EnumBinding.get_in_c_type_text):
2594 (TypeBindings.create_type_declaration_.EnumBinding.get_setter_value_expression_pattern):
2595 (TypeBindings.create_type_declaration_.PlainString.reduce_to_raw_type):
2596 (TypeBindings.create_type_declaration_.PlainString.get_setter_value_expression_pattern):
2597 (get_in_c_type_text):
2598 (get_setter_value_expression_pattern):
2599 (PlainObjectBinding.get_in_c_type_text):
2600 (PlainObjectBinding.get_setter_value_expression_pattern):
2601 (RawTypesBinding.get_in_c_type_text):
2602 (RawTypesBinding.get_setter_value_expression_pattern):
2603 (get_annotated_type_text):
2604 (MethodGenerateModes.get_modes):
2605 (MethodGenerateModes.StrictParameterMode.get_c_param_type_text):
2606 (MethodGenerateModes.StrictParameterMode):
2607 (MethodGenerateModes.StrictParameterMode.get_setter_value_expression):
2608 (MethodGenerateModes.RawParameterMode.get_c_param_type_text):
2609 (MethodGenerateModes.RawParameterMode):
2610 (MethodGenerateModes.RawParameterMode.get_setter_value_expression):
2611 (MethodGenerateModes.CombinedMode.get_c_param_type_text):
2612 (MethodGenerateModes):
2613 (MethodGenerateModes.CombinedMode):
2614 (MethodGenerateModes.CombinedMode.get_setter_value_expression):
2616 2011-12-28 Hans Wennborg <hans@chromium.org>
2618 IndexedDB: IDBKeyRange constructor should throw when lower > upper
2619 https://bugs.webkit.org/show_bug.cgi?id=74705
2621 Reviewed by Tony Chang.
2623 Make IDBKeyRange throw an exception when lower > upper,
2624 or lower == upper and one or both of the bounds is open.
2626 Tested in storage/indexeddb/keyrange.html.
2628 * storage/IDBKeyRange.cpp:
2629 (WebCore::IDBKeyRange::bound):
2631 2011-12-28 Alexander Pavlov <apavlov@chromium.org>
2633 Web Inspector: [protocol] empty enum constant should be replaced with identifier
2634 https://bugs.webkit.org/show_bug.cgi?id=75273
2636 Reviewed by Yury Semikhatsky.
2638 * inspector/Inspector.json:
2639 * inspector/InspectorCSSAgent.cpp:
2640 (WebCore::InspectorCSSAgent::asInspectorStyleSheet):
2641 (WebCore::InspectorCSSAgent::detectOrigin):
2642 * inspector/InspectorStyleSheet.cpp:
2643 (WebCore::InspectorStyleSheet::buildObjectForRule):
2644 * inspector/front-end/CSSStyleModel.js:
2645 (WebInspector.CSSRule.prototype.get isRegular):
2647 2011-12-27 Pavel Feldman <pfeldman@google.com>
2649 Web Inspector: complete annotating SDK component.
2650 https://bugs.webkit.org/show_bug.cgi?id=75259
2652 Reviewed by Yury Semikhatsky.
2654 * inspector/front-end/DebuggerPresentationModel.js:
2655 (WebInspector.DebuggerPresentationModel.prototype._addScript):
2656 * inspector/front-end/NetworkManager.js:
2657 (WebInspector.NetworkManager.prototype._cacheDisabledSettingChanged):
2658 (WebInspector.NetworkDispatcher.prototype._isNull):
2659 (WebInspector.NetworkDispatcher.prototype.webSocketCreated):
2660 * inspector/front-end/Resource.js:
2661 (WebInspector.Resource.displayName):
2662 * inspector/front-end/ResourceTreeModel.js:
2663 (WebInspector.ResourceTreeModel.prototype._onResourceUpdated):
2664 (WebInspector.ResourceTreeModel.prototype._consoleMessageAdded):
2665 (WebInspector.ResourceTreeFrame.prototype.get name):
2666 * inspector/front-end/TabbedEditorContainer.js:
2668 2011-12-27 Anantanarayanan G Iyengar <ananta@chromium.org>
2670 Crash in the WebKit accessibility code while attempting to retrieve the title UI element.
2671 https://bugs.webkit.org/show_bug.cgi?id=75279
2673 Reviewed by Ryosuke Niwa.
2675 Fix a crash in the the WebKit accessibility code which occurs while retrieving
2676 the title UI clement. The fix is to NULL check the RenderObject::node return value.
2678 No test added as there is no reduction.
2680 * accessibility/AccessibilityRenderObject.cpp:
2681 (WebCore::AccessibilityRenderObject::titleUIElement):
2683 2011-12-27 Dominic Cooney <dominicc@chromium.org>
2685 Remove initWebKitAnimationEvent method
2686 https://bugs.webkit.org/show_bug.cgi?id=71698
2688 Reviewed by Ojan Vafai.
2690 Now that WebKitAnimationEvent has a constructor, we don't need
2692 method. <https://www.w3.org/Bugs/Public/show_bug.cgi?id=15338> is
2693 tracking the change to the CSS Animations spec.
2695 * dom/WebKitAnimationEvent.cpp:
2696 * dom/WebKitAnimationEvent.h:
2697 * dom/WebKitAnimationEvent.idl:
2699 2011-12-27 Dominic Cooney <dominicc@chromium.org>
2701 Remove initWebKitTransitionEvent method
2702 https://bugs.webkit.org/show_bug.cgi?id=71701
2704 Reviewed by Ojan Vafai.
2706 Now that WebKitTransitionEvent has a constructor, we don't need
2708 method. <https://www.w3.org/Bugs/Public/show_bug.cgi?id=15339> is
2709 tracking the change to the CSS Transitions spec.
2711 * dom/WebKitTransitionEvent.cpp:
2712 * dom/WebKitTransitionEvent.h:
2713 * dom/WebKitTransitionEvent.idl:
2715 2011-12-27 Tony Chang <tony@chromium.org>
2717 Move HarfBuzz files into their own directory
2718 https://bugs.webkit.org/show_bug.cgi?id=72780
2720 Reviewed by Daniel Bates.
2722 FontCacheLinux.cpp got moved to platform/graphics/skia/FontCacheSkia.cpp since it wasn't HarfBuzz specific.
2724 I used HarfBuzz in filenames since that seems to be how the name is capitalized on the project home page.
2726 Fixed some style errors caught by the style checker.
2728 * PlatformBlackBerry.cmake:
2729 * WebCore.gyp/WebCore.gyp:
2731 * platform/graphics/chromium/FontPlatformData.h:
2732 * platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/ComplexTextControllerLinux.cpp.
2733 * platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.h: Renamed from Source/WebCore/platform/graphics/chromium/ComplexTextControllerLinux.h.
2734 * platform/graphics/harfbuzz/FontHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontLinux.cpp.
2735 * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontPlatformDataLinux.cpp.
2736 * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h: Renamed from Source/WebCore/platform/graphics/chromium/FontPlatformDataLinux.h.
2737 * platform/graphics/harfbuzz/HarfBuzzSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/HarfbuzzSkia.cpp.
2738 * platform/graphics/harfbuzz/HarfBuzzSkia.h: Renamed from Source/WebCore/platform/graphics/chromium/HarfbuzzSkia.h.
2739 * platform/graphics/harfbuzz/SimpleFontDataSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/SimpleFontDataLinux.cpp.
2740 * platform/graphics/skia/FontCacheSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontCacheLinux.cpp.
2741 * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp:
2743 2011-12-27 Huang Dongsung <luxtella@company100.net>
2745 [TexMap][QT] The fragment shader in OpenGL ES2 requires the default precision
2747 https://bugs.webkit.org/show_bug.cgi?id=75168
2749 Reviewed by Noam Rosenthal.
2751 No new functionality so no new tests.
2753 * platform/graphics/opengl/TextureMapperGL.cpp:
2754 (WebCore::TextureMapperGL::initializeShaders):
2756 2011-12-27 Ryosuke Niwa <rniwa@webkit.org>
2758 [Chromium] uninitialized variable in fakeMouseMoveEventTimerFired
2759 https://bugs.webkit.org/show_bug.cgi?id=75263
2761 Reviewed by Tony Chang.
2763 The failure was caused by PlatformKeyboardEvent::getCurrentModifierState in PlatformKeyboardEventChromium.cpp
2764 not initializing arguments on Linux. Fixed the failure by always assigning false to the arguments.
2766 But we should really fix this function for Linux. Not recognizing any modifier isn't great.
2768 * platform/chromium/PlatformKeyboardEventChromium.cpp:
2769 (WebCore::PlatformKeyboardEvent::getCurrentModifierState):
2771 2011-12-27 Kentaro Hara <haraken@chromium.org>
2773 WIP: Enable the [Supplemental] IDL on Gtk
2774 https://bugs.webkit.org/show_bug.cgi?id=74972
2776 Reviewed by Adam Barth.
2778 This patch enables the [Supplemental] IDL on Gtk by changing the build
2779 flow of Gtk as follows.
2781 - Previous build flow:
2782 foreach $idl (all IDL files) {
2783 generate-bindings.pl depends on $idl;
2784 generate-bindings.pl reads $idl;
2785 generate-bindings.pl generates .h and .cpp files for $idl;
2788 - New build flow (See the discussions in bug 72138 for more details):
2789 resolve-supplemental.pl depends on all IDL files;
2790 resolve-supplemental.pl reads all IDL files;
2791 resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
2792 resolve-supplemental.pl outputs supplemental_dependency.tmp;
2793 foreach $idl (all IDL files) {
2794 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
2795 generate-bindings.pl reads $idl;
2796 generate-bindings.pl reads supplemental_dependency.tmp;
2797 generate-bindings.pl generates .h and .cpp files for $idl,
2798 including all attributes in the IDL files that are implementing $idl;
2801 Tests: Confirm that build succeeds.
2802 http/tests/websocket/tests/*
2804 * GNUmakefile.am: Described the above build flow.
2805 * GNUmakefile.list.am: Added a list of IDL files. Instead, removed a list of JS*.h and JS*.cpp
2806 that are generated by the IDL files.
2808 2011-12-27 Tony Chang <tony@chromium.org>
2810 [chromium] When building with clang, enable -Wglobal-constructors
2811 https://bugs.webkit.org/show_bug.cgi?id=74365
2813 Reviewed by Adam Barth.
2815 * WebCore.gyp/WebCore.gyp:
2817 2011-12-27 Tony Chang <tony@chromium.org>
2819 [chromium] really enable wpo for WebCore libs and for WTF
2820 https://bugs.webkit.org/show_bug.cgi?id=75264
2822 Reviewed by Adam Barth.
2824 * WebCore.gyp/WebCore.gyp: The variable was getting clobbered by the
2825 value set in common.gypi. Use a target_defaults instead to set the
2826 variable. I tested manually on my Windows machine and
2827 WholeProgramOptimization is getting set when buildtype is Official.
2829 2011-12-27 Tony Chang <tony@chromium.org>
2831 [chromium] remove references to files no longer in the tree
2832 https://bugs.webkit.org/show_bug.cgi?id=75262
2834 Reviewed by Adam Barth.
2836 * WebCore.gypi: platform/mac/PlatformMouseEventMac.mm and platform/mac/WheelEventMac.mm
2837 were removed in r103652.
2839 2011-12-27 Vsevolod Vlasov <vsevik@chromium.org>
2841 Unreviewed web inspector localizedStrings.js fix.
2843 * English.lproj/localizedStrings.js:
2845 2011-12-27 Vsevolod Vlasov <vsevik@chromium.org>
2847 Web Inspector: Introduce support for experimental settings.
2848 https://bugs.webkit.org/show_bug.cgi?id=75250
2850 Reviewed by Pavel Feldman.
2852 * English.lproj/localizedStrings.js:
2853 * inspector/front-end/ScriptsPanel.js:
2854 * inspector/front-end/Settings.js:
2855 (WebInspector.ExperimentsSettings):
2856 (WebInspector.ExperimentsSettings.prototype.get experiments):
2857 (WebInspector.ExperimentsSettings.prototype.get experimentsEnabled):
2858 (WebInspector.ExperimentsSettings.prototype._createExperiment):
2859 (WebInspector.ExperimentsSettings.prototype.set _cleanUpSetting.get var):
2860 (WebInspector.ExperimentsSettings.prototype.set _cleanUpSetting):
2861 (set WebInspector.Experiment):
2862 (WebInspector.Experiment.prototype.get name):
2863 (WebInspector.Experiment.prototype.get title):
2864 (WebInspector.Experiment.prototype.isEnabled):
2865 (WebInspector.Experiment.prototype.setEnabled):
2867 * inspector/front-end/SettingsScreen.js:
2868 (WebInspector.SettingsScreen):
2869 (WebInspector.SettingsScreen.prototype._createExperimentsWarningSubsection):
2870 (WebInspector.SettingsScreen.prototype._createExperimentCheckbox.listener):
2871 (WebInspector.SettingsScreen.prototype._createExperimentCheckbox):
2872 * inspector/front-end/helpScreen.css:
2873 (.settings-experiments-warning-subsection-warning):
2874 (.settings-experiments-warning-subsection-message):
2876 2011-12-27 Alexander Pavlov <apavlov@chromium.org>
2878 Web Inspector: exception when scrolling in JavaScriptOutline dialog with empty query
2879 https://bugs.webkit.org/show_bug.cgi?id=75255
2881 Reviewed by Pavel Feldman.
2883 * inspector/front-end/JavaScriptOutlineDialog.js:
2884 (WebInspector.JavaScriptOutlineDialog.prototype._onScroll):
2886 2011-12-27 Pavel Feldman <pfeldman@google.com>
2888 Web Inspector: add more annotations on SDK classes.
2889 https://bugs.webkit.org/show_bug.cgi?id=75247
2891 Reviewed by Yury Semikhatsky.
2893 * inspector/Inspector.json:
2894 * inspector/compile-front-end.sh:
2895 * inspector/front-end/ApplicationCacheModel.js:
2896 (WebInspector.ApplicationCacheDispatcher.prototype.networkStateUpdated):
2897 * inspector/front-end/BreakpointManager.js:
2898 (WebInspector.BreakpointManager.prototype._breakpoint):
2899 * inspector/front-end/Color.js:
2900 (WebInspector.Color.prototype.get shorthex):
2901 (WebInspector.Color.prototype.get hex):
2902 (WebInspector.Color.prototype.get rgb):
2903 (WebInspector.Color.prototype.get hsl):
2904 (WebInspector.Color.prototype.get nickname):
2905 (WebInspector.Color.prototype.hasShortHex):
2906 (WebInspector.Color.prototype._individualRGBValueToFloatValue):
2907 (WebInspector.Color.prototype._rgbStringsToHex):
2908 (WebInspector.Color.prototype._parse.this.nickname.set 2):
2909 (WebInspector.Color.prototype._parse.this.hsla.set 1):
2910 (WebInspector.Color.prototype._parse.this.rgba.set 0):
2911 (WebInspector.Color.prototype._parse.set WebInspector):
2912 (WebInspector.Color.prototype._parse):
2913 * inspector/front-end/CompilerSourceMapping.js:
2914 * inspector/front-end/ConsoleModel.js:
2915 * inspector/front-end/ContentProviders.js:
2916 (WebInspector.ScriptContentProvider):
2917 (WebInspector.ConcatenatedScriptsContentProvider):
2918 (WebInspector.CompilerSourceMappingContentProvider):
2919 (WebInspector.StaticContentProvider):
2920 * inspector/front-end/CookieParser.js:
2921 (WebInspector.CookieParser.KeyValue):
2922 (WebInspector.CookieParser.prototype.parseCookie):
2923 (WebInspector.CookieParser.prototype.parseSetCookie):
2924 (WebInspector.CookieParser.prototype._extractKeyValue):
2925 * inspector/front-end/DOMStorage.js:
2926 * inspector/front-end/Database.js:
2927 (WebInspector.DatabaseDispatcher.prototype.sqlTransactionSucceeded):
2928 (WebInspector.DatabaseDispatcher.prototype.sqlTransactionFailed):
2929 * inspector/front-end/DebuggerModel.js:
2930 (WebInspector.DebuggerModel.Location):
2931 (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
2932 * inspector/front-end/DebuggerPresentationModel.js:
2933 (WebInspector.DebuggerPresentationModelResourceBinding.prototype._setContentWithInitialContent):
2934 * inspector/front-end/ElementsTreeOutline.js:
2935 * inspector/front-end/HAREntry.js:
2936 * inspector/front-end/NetworkLog.js:
2937 (WebInspector.NetworkLog.prototype._mainFrameNavigated):
2938 * inspector/front-end/Placard.js:
2939 * inspector/front-end/RawSourceCode.js:
2940 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
2941 (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.uiLocationToRawLocation):
2942 * inspector/front-end/RemoteObject.js:
2943 (WebInspector.RemoteObject.fromPrimitiveValue):
2944 (WebInspector.RemoteObject.prototype.setPropertyValue.propertySetCallback):
2945 (WebInspector.RemoteObject.prototype.setPropertyValue):
2946 (WebInspector.LocalJSONObject.prototype.get hasChildren):
2947 (WebInspector.LocalJSONObject.prototype._children):
2948 * inspector/front-end/Resource.js:
2949 (WebInspector.Resource.restoreRevisions):
2950 (WebInspector.Resource.prototype.get queryParameters):
2951 (WebInspector.Resource.prototype.get formParameters):
2952 (WebInspector.Resource.prototype.isHttpFamily):
2953 * inspector/front-end/ResourceCategory.js:
2954 * inspector/front-end/ResourceUtils.js:
2955 * inspector/front-end/ScopeChainSidebarPane.js:
2956 (WebInspector.ScopeChainSidebarPane.prototype.update):
2957 * inspector/front-end/Script.js:
2958 (WebInspector.Script.prototype.isInlineScript):
2959 * inspector/front-end/ScriptFormatter.js:
2960 (WebInspector.ScriptFormatter.positionToLocation):
2961 * inspector/front-end/WelcomeView.js:
2962 (WebInspector.WelcomeView.prototype.addMessage):
2963 * inspector/front-end/externs.js:
2964 (Array.prototype.upperBound):
2966 2011-12-27 Vsevolod Vlasov <vsevik@chromium.org>
2968 Web Inspector: Scripts panel tabbed editor does not reopen closed tabs.
2969 https://bugs.webkit.org/show_bug.cgi?id=75245
2971 Reviewed by Pavel Feldman.
2973 * inspector/front-end/NetworkItemView.js:
2974 (WebInspector.NetworkItemView):
2975 * inspector/front-end/TabbedEditorContainer.js:
2976 (WebInspector.TabbedEditorContainer):
2977 (WebInspector.TabbedEditorContainer.prototype._tabClosed):
2978 * inspector/front-end/TabbedPane.js:
2979 (WebInspector.TabbedPane.prototype.closeTab):
2980 (WebInspector.TabbedPane.prototype.selectTab):
2982 2011-12-27 Yury Semikhatsky <yurys@chromium.org>
2984 Web Inspector: report per document JS event listener count
2985 https://bugs.webkit.org/show_bug.cgi?id=74298
2987 This patch adds JS event listener count to the memory agent
2990 Reviewed by Pavel Feldman.
2992 Test: inspector/dom-statistics.html
2994 * inspector/Inspector.json:
2995 * inspector/InspectorMemoryAgent.cpp:
2997 2011-12-27 Alexander Pavlov <apavlov@chromium.org>
2999 Web Inspector: [REGRESSION] Go to Function dialog always has a minimal height
3000 https://bugs.webkit.org/show_bug.cgi?id=75254
3002 Reviewed by Yury Semikhatsky.
3004 * inspector/front-end/scriptsPanel.css:
3007 2011-12-26 Vsevolod Vlasov <vsevik@chromium.org>
3009 Web Inspector: Create tabbed editor for scripts panel.
3010 https://bugs.webkit.org/show_bug.cgi?id=75230
3012 Reviewed by Pavel Feldman.
3015 * WebCore.vcproj/WebCore.vcproj:
3016 * inspector/compile-front-end.sh:
3017 * inspector/front-end/ScriptsNavigator.js:
3018 (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes.get if):
3019 (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes):
3020 (WebInspector.NavigatorScriptTreeElement.prototype.ondblclick):
3021 (WebInspector.NavigatorScriptTreeElement.prototype.onenter):
3022 * inspector/front-end/ScriptsPanel.js:
3023 * inspector/front-end/TabbedEditorContainer.js: Added.
3024 * inspector/front-end/TabbedPane.js:
3025 (WebInspector.TabbedPane.prototype.get visibleView):
3026 (WebInspector.TabbedPane.prototype.get selectedTabId):
3027 (WebInspector.TabbedPane.prototype.closeAllTabs):
3028 (WebInspector.TabbedPane.prototype.changeTabTitle):
3029 (WebInspector.TabbedPane.prototype.changeTabView):
3030 (WebInspector.TabbedPaneTab):
3031 (WebInspector.TabbedPaneTab.prototype.get title):
3032 (WebInspector.TabbedPaneTab.prototype.set title):
3033 (WebInspector.TabbedPaneTab.prototype.get view):
3034 (WebInspector.TabbedPaneTab.prototype.set view):
3035 (WebInspector.TabbedPaneTab.prototype._createTabElement):
3036 * inspector/front-end/WebKit.qrc:
3037 * inspector/front-end/inspector.html:
3038 * inspector/front-end/scriptsPanel.css:
3039 (.scripts-views-container):
3041 (#scripts-editor-container-tabbed-pane .tabbed-pane-header):
3042 (#scripts-editor-container-tabbed-pane .tabbed-pane-header-contents):
3043 (#scripts-editor-container-tabbed-pane .tabbed-pane-content):
3045 2011-12-27 Pavel Feldman <pfeldman@google.com>
3047 Not reviewed: Rolling out r103703 for breaking Canvas2DLayerChromiumTest.testFullLifecycle.
3049 * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
3050 (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
3051 (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
3052 (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
3053 (WebCore::Canvas2DLayerChromium::setTextureManager):
3054 (WebCore::Canvas2DLayerChromium::updateCompositorResources):
3055 (WebCore::Canvas2DLayerChromium::pushPropertiesTo):
3056 (WebCore::Canvas2DLayerChromium::unreserveContentsTexture):
3057 (WebCore::Canvas2DLayerChromium::cleanupResources):
3058 * platform/graphics/chromium/Canvas2DLayerChromium.h:
3060 2011-12-22 Vangelis Kokkevis <vangelis@chromium.org>
3062 [chromium] Bypass the shadow texture copy for accelerated
3063 canvas when running the compositor in single threaded mode.
3064 https://bugs.webkit.org/show_bug.cgi?id=75146
3066 The texture copy fails on Windows as glCopyTexImage2D() doesn't
3067 support BGRA source textures.
3068 This change also modified Canvas2DLayerChromium::updateCompositorResources
3069 to call glCopyTexSubImage2D() instead of glCopyTexImage2D() so that
3070 the copy can work with texture allocated via the glTexStorage2D
3073 Reviewed by James Robinson.
3076 * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
3077 (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
3078 (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
3079 (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
3080 (WebCore::Canvas2DLayerChromium::setTextureManager):
3081 (WebCore::Canvas2DLayerChromium::updateCompositorResources):
3082 (WebCore::Canvas2DLayerChromium::pushPropertiesTo):
3083 (WebCore::Canvas2DLayerChromium::unreserveContentsTexture):
3084 (WebCore::Canvas2DLayerChromium::cleanupResources):
3085 * platform/graphics/chromium/Canvas2DLayerChromium.h:
3087 2011-12-26 Gyuyoung Kim <gyuyoung.kim@samsung.com>
3089 [EFL][WK2] Implement context menu for EFL port.
3090 https://bugs.webkit.org/show_bug.cgi?id=74995
3092 Reviewed by Anders Carlsson.
3094 Implement missing ContextMenuEfl class in order to support WK2's context menu.
3095 Because WK2's context menu still needs WebCore's context menu implementation.
3096 And of course, this patch also can be used for WK1 without CROSS_PLATFORM_CONTEXT_MENU
3099 * platform/ContextMenu.h:
3100 * platform/ContextMenuItem.h:
3101 * platform/PlatformMenuDescription.h:
3102 * platform/efl/ContextMenuEfl.cpp:
3103 (WebCore::ContextMenu::~ContextMenu):
3104 (WebCore::ContextMenu::appendItem):
3105 (WebCore::ContextMenu::insertItem):
3106 (WebCore::ContextMenu::itemCount):
3107 (WebCore::ContextMenu::setPlatformDescription):
3108 (WebCore::ContextMenu::platformDescription):
3109 (WebCore::ContextMenu::releasePlatformDescription):
3110 (WebCore::platformMenuDescription):
3111 (WebCore::contextMenuItemVector):
3112 * platform/efl/ContextMenuItemEfl.cpp:
3113 (WebCore::ContextMenuItem::ContextMenuItem):
3114 (WebCore::ContextMenuItem::~ContextMenuItem):
3115 (WebCore::ContextMenuItem::setType):
3116 (WebCore::ContextMenuItem::type):
3117 (WebCore::ContextMenuItem::setAction):
3118 (WebCore::ContextMenuItem::action):
3119 (WebCore::ContextMenuItem::setTitle):
3120 (WebCore::ContextMenuItem::title):
3121 (WebCore::ContextMenuItem::setChecked):
3122 (WebCore::ContextMenuItem::checked):
3123 (WebCore::ContextMenuItem::setEnabled):
3124 (WebCore::ContextMenuItem::enabled):
3126 2011-12-26 Hajime Morrita <morrita@chromium.org>
3128 [Refactoring] Node::setTreeScopeRecursively() doesn't need includeRoot parameter
3129 https://bugs.webkit.org/show_bug.cgi?id=75240
3131 Reviewed by Anders Carlsson.
3133 No new tests. No behavior change.
3136 (WebCore::Node::setTreeScopeRecursively):
3139 2011-12-26 Darin Adler <darin@apple.com>
3141 Use OwnPtr and OwnArrayPtr in a couple more places
3142 https://bugs.webkit.org/show_bug.cgi?id=75211
3144 Reviewed by Andreas Kling.
3146 I had a patch with some changes from a while back from going through all sorts of
3147 classes and changing code to use adoptPtr. Most were landed long ago, these are the
3148 ones that still apply.
3150 There are six pieces here that could each be landed separately.
3151 The big one is CSSParser.
3153 * css/CSSGrammar.y: Update for members and functions that now
3154 return PassOwnPtr instead of raw pointers.
3155 * css/CSSParser.cpp:
3156 (WebCore::CSSParser::CSSParser): Remove explicit construction
3157 for m_valueList and m_data since OwnPtr and OwnArrayPtr initialize
3159 (WebCore::CSSParser::~CSSParser): Removed delete m_valueList and
3160 fastFree(m_data) since OwnPtr and OwnArrayPtr handle that.
3161 (WebCore::CSSParser::setupParser): Use adoptArrayPtr and new for
3162 the character array instead of fastFree/fastMalloc. Added get
3163 function calls as needed.
3164 (WebCore::CSSParser::parseValue): Added get function calls as needed.
3165 (WebCore::CSSParser::parseContent): Ditto.
3166 (WebCore::CSSParser::parseFillProperty): Ditto.
3167 (WebCore::CSSParser::parseTransformOriginShorthand): Ditto.
3168 (WebCore::CSSParser::parseBorderImage): Ditto.
3169 (WebCore::CSSParser::parseTransformOrigin): Ditto.
3170 (WebCore::CSSParser::parsePerspectiveOrigin): Ditto.
3171 (WebCore::CSSParser::sinkFloatingValueList): Changed to return PassOwnPtr.
3172 The adoptPtr call is here.
3173 (WebCore::CSSParser::sinkFloatingFunction): Ditto.
3174 (WebCore::CSSParser::markSelectorListStart): Added get function calls as needed.
3175 (WebCore::CSSParser::markSelectorListEnd): Ditto.
3176 (WebCore::CSSParser::markRuleBodyStart): Ditto.
3177 (WebCore::CSSParser::markRuleBodyEnd): Ditto.
3178 (WebCore::CSSParser::markPropertyStart): Ditto.
3179 (WebCore::CSSParser::markPropertyEnd): Ditto.
3180 * css/CSSParser.h: Moved conditional includes to their own paragraph.
3181 Made sinkFloatingValueList and sinkFloatingFunction return PassOwnPtr.
3182 Made m_valueList an OwnPtr and m_data an OwnArrayPtr.
3183 * css/SVGCSSParser.cpp:
3184 (WebCore::CSSParser::parseSVGValue): Added a call to the get function.
3186 * html/PluginDocument.h: Made isPluginDocument private. Also marked all the
3187 functions that are overriding here as OVERRIDE since I was touching the header.
3189 * html/parser/HTMLToken.h:
3190 (WebCore::HTMLTokenTypes::DoctypeData::DoctypeData): Removed an unneeded line
3191 explicitly initializing the base class.
3193 * page/animation/AnimationBase.cpp:
3194 (WebCore::RefCountedPropertyWrapper::RefCountedPropertyWrapper): Fixed indent.
3196 * rendering/style/RenderStyle.h: Moved conditional includes to their own paragraph.
3198 * xml/parser/MarkupTokenBase.h:
3199 (WebCore::MarkupTokenBase::beginDOCTYPE): Removed unneeded parentheses.
3201 2011-12-26 Vsevolod Vlasov <vsevik@chromium.org>
3203 Web Inspector: Extract FileEditor from ScriptsPanel.
3204 https://bugs.webkit.org/show_bug.cgi?id=75229
3206 Reviewed by Pavel Feldman.
3208 * inspector/front-end/JavaScriptSourceFrame.js:
3209 (WebInspector.JavaScriptSourceFrame.prototype.suggestedFileName):
3210 * inspector/front-end/ScriptsNavigator.js:
3211 * inspector/front-end/ScriptsPanel.js:
3212 (WebInspector.ScriptsPanel.prototype._reset):
3213 (WebInspector.ScriptsPanel.prototype.get visibleView):
3214 (WebInspector.ScriptsPanel.prototype._updateScriptViewStatusBarItems):
3215 (WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced.get if):
3216 (WebInspector.ScriptsPanel.EditorContainer):
3217 (WebInspector.ScriptsPanel.EditorContainer.prototype.get currentSourceFrame):
3218 (WebInspector.ScriptsPanel.EditorContainer.prototype.show):
3219 (WebInspector.ScriptsPanel.EditorContainer.prototype.showSourceFrame):
3220 (WebInspector.ScriptsPanel.EditorContainer.prototype.isSourceFrameOpen):
3221 (WebInspector.ScriptsPanel.EditorContainer.prototype.replaceSourceFrames):
3222 (WebInspector.ScriptsPanel.EditorContainer.prototype.setSourceFrameIsDirty):
3223 (WebInspector.ScriptsPanel.EditorContainer.prototype.reset):
3224 (WebInspector.ScriptsPanel.SingleFileEditorContainer):
3225 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.get currentSourceFrame):
3226 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.show):
3227 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.showSourceFrame):
3228 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.isSourceFrameOpen):
3229 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.replaceSourceFrames):
3230 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.setSourceFrameIsDirty):
3231 (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.reset):
3232 * inspector/front-end/UISourceCode.js:
3233 (WebInspector.UISourceCode.prototype.get domain):
3234 (WebInspector.UISourceCode.prototype.get folderName):
3235 (WebInspector.UISourceCode.prototype.get fileName):
3236 (WebInspector.UISourceCode.prototype.get displayName):
3237 (WebInspector.UISourceCode.prototype._parseURL):
3239 2011-12-26 Darin Adler <darin@apple.com>
3241 Fix mutation observer build after didMoveToNewDocument change
3242 https://bugs.webkit.org/show_bug.cgi?id=75224
3244 Reviewed by Hajime Morita.
3247 (WebCore::willCallDidMoveToNewDocument): Added.
3248 (WebCore::didMoveToNewDocumentWasCalled): Added.
3249 (WebCore::Node::setDocument): Call new debugging function.
3250 (WebCore::Node::didMoveToNewDocument): Ditto. Also use ASSERT_UNUSED
3251 unconditionally rather than UNUSED_PARAM inside and #if. Also added
3252 a new assertion that checks that hte old document was passed through
3255 2011-12-26 Alexander Pavlov <apavlov@chromium.org>
3257 Web Inspector: [Scripts] Implement iterative match highlighting in the "Go to Function" dialog item list
3258 https://bugs.webkit.org/show_bug.cgi?id=75226
3260 Reviewed by Pavel Feldman.
3262 * inspector/front-end/JavaScriptOutlineDialog.js:
3263 (WebInspector.JavaScriptOutlineDialog):
3264 (WebInspector.JavaScriptOutlineDialog.prototype._createSearchRegExp):
3265 (WebInspector.JavaScriptOutlineDialog.prototype._filterFunctions):
3266 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.previousItem):
3267 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.nextItem):
3268 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown):
3269 (WebInspector.JavaScriptOutlineDialog.prototype._updateSelection):
3270 (WebInspector.JavaScriptOutlineDialog.prototype._onScroll):
3271 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter):
3272 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype.highlightViewportItems):
3273 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype.clearHighlight):
3274 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype._highlightItem):
3275 (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype._viewportRowRange):
3276 * inspector/front-end/javaScriptOutlineDialog.css:
3277 (.js-outline-dialog > .container > div.item > span.highlight):
3279 2011-12-26 Vsevolod Vlasov <vsevik@chromium.org>
3281 Web Inspector: Extract FileSelector from ScriptsPanel.
3282 https://bugs.webkit.org/show_bug.cgi?id=75173
3284 Reviewed by Pavel Feldman.
3286 * inspector/front-end/ScriptsNavigator.js:
3287 (WebInspector.ScriptsNavigator):
3288 (WebInspector.ScriptsNavigator.prototype.get defaultFocusedElement):
3289 (WebInspector.ScriptsNavigator.prototype.show):
3290 (WebInspector.ScriptsNavigator.prototype.setScriptSourceIsDirty):
3291 (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes):
3292 (WebInspector.ScriptsNavigator.prototype.scriptSelected):
3293 * inspector/front-end/ScriptsPanel.js:
3294 (WebInspector.ScriptsPanel.prototype.get defaultFocusedElement):
3295 (WebInspector.ScriptsPanel.prototype._uiSourceCodeAdded.get if):
3296 (WebInspector.ScriptsPanel.prototype.setScriptSourceIsBeingEdited):
3297 (WebInspector.ScriptsPanel.prototype._reset):
3298 (WebInspector.ScriptsPanel.prototype._showSourceLine):
3299 (WebInspector.ScriptsPanel.prototype._showAndRevealInFileSelector):
3300 (WebInspector.ScriptsPanel.prototype._createSourceFrame):
3301 (WebInspector.ScriptsPanel.prototype._updateExecutionLine):
3302 (WebInspector.ScriptsPanel.prototype._scriptSelected):
3303 (WebInspector.ScriptsPanel.FileSelector):
3304 (WebInspector.ScriptsPanel.FileSelector.prototype.get defaultFocusedElement):
3305 (WebInspector.ScriptsPanel.FileSelector.prototype.show):
3306 (WebInspector.ScriptsPanel.FileSelector.prototype.addUISourceCode):
3307 (WebInspector.ScriptsPanel.FileSelector.prototype.isScriptSourceAdded):
3308 (WebInspector.ScriptsPanel.FileSelector.prototype.revealUISourceCode):
3309 (WebInspector.ScriptsPanel.FileSelector.prototype.setScriptSourceIsDirty):
3310 (WebInspector.ScriptsPanel.FileSelector.prototype.replaceUISourceCodes):
3311 (WebInspector.ScriptsPanel.ComboBoxFileSelector):
3312 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.get defaultFocusedElement):
3313 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.show):
3314 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.showDebugSidebarResizeWidget):
3315 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.addUISourceCode):
3316 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.isScriptSourceAdded):
3317 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.revealUISourceCode):
3318 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._innerRevealUISourceCode):
3319 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addToHistory):
3320 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.replaceUISourceCodes):
3321 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._showScriptFoldersSettingChanged):
3322 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._reset):
3323 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.setScriptSourceIsDirty):
3324 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._createEditorToolbar):
3325 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.get var):
3326 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.insertOrdered.optionCompare):
3327 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.insertOrdered):
3328 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect):
3329 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._resetFilesSelect):
3330 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._updateBackAndForwardButtons):
3331 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goBack):
3332 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goForward):
3333 (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._filesSelectChanged):
3334 * inspector/front-end/inspector.html:
3335 * inspector/front-end/utilities.js:
3338 2011-12-26 Alexander Pavlov <apavlov@chromium.org>
3340 Web Inspector: Implement "Go to Function" dialog for JavaScript
3341 https://bugs.webkit.org/show_bug.cgi?id=75092
3343 Reviewed by Pavel Feldman.
3345 * English.lproj/localizedStrings.js:
3347 * WebCore.vcproj/WebCore.vcproj:
3348 * inspector/compile-front-end.sh:
3349 * inspector/front-end/JavaScriptOutlineDialog.js: Added.
3350 (WebInspector.JavaScriptOutlineDialog.onMouseDown):
3351 (WebInspector.JavaScriptOutlineDialog):
3352 (WebInspector.JavaScriptOutlineDialog.didAddChunk):
3353 (WebInspector.JavaScriptOutlineDialog.install):
3354 (WebInspector.JavaScriptOutlineDialog._show):
3355 (WebInspector.JavaScriptOutlineDialog.createShortcut):
3356 (WebInspector.JavaScriptOutlineDialog.prototype._resizeWindow):
3357 (WebInspector.JavaScriptOutlineDialog.prototype._appendItemElements):
3358 (WebInspector.JavaScriptOutlineDialog.prototype._createSearchRegExp):
3359 (WebInspector.JavaScriptOutlineDialog.prototype._filterFunctions):
3360 (WebInspector.JavaScriptOutlineDialog.prototype._selectFirstItem):
3361 (WebInspector.JavaScriptOutlineDialog.prototype._hide):
3362 (WebInspector.JavaScriptOutlineDialog.prototype._onBlur):
3363 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.previousItem):
3364 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.nextItem):
3365 (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown):
3366 (WebInspector.JavaScriptOutlineDialog.prototype._scheduleFilter):
3367 (WebInspector.JavaScriptOutlineDialog.prototype._updateSelection):
3368 (WebInspector.JavaScriptOutlineDialog.prototype._onClick):
3369 (WebInspector.JavaScriptOutlineDialog.prototype._onMouseMove):
3370 (WebInspector.JavaScriptOutlineDialog.prototype._highlightFunctionLine):
3371 * inspector/front-end/JavaScriptSourceFrame.js:
3372 (WebInspector.JavaScriptSourceFrame.prototype.get uiSourceCode):
3373 * inspector/front-end/ScriptsPanel.js:
3374 (WebInspector.ScriptsPanel.prototype._didBuildOutlineChunk):
3375 (WebInspector.ScriptsPanel.prototype._reset):
3376 (WebInspector.ScriptsPanel.prototype.requestVisibleScriptOutline):
3377 (WebInspector.ScriptsPanel.prototype._createEditorToolbar):
3378 * inspector/front-end/WebKit.qrc:
3379 * inspector/front-end/inspector.html:
3380 * inspector/front-end/javaScriptOutlineDialog.css: Added.
3381 (.js-outline-dialog):
3382 (.js-outline-dialog > input):
3383 (.js-outline-dialog > div.progress):
3384 (.js-outline-dialog > div.container):
3385 (.js-outline-dialog > .container > div.item):
3386 (.js-outline-dialog > .container > div.item.selected):
3388 2011-12-26 Pavel Feldman <pfeldman@google.com>
3390 Web Inspector: make SDK compilation component self-contained.
3391 https://bugs.webkit.org/show_bug.cgi?id=75172
3393 Reviewed by Yury Semikhatsky.
3395 * inspector/compile-front-end.sh:
3396 * inspector/front-end/ConsoleMessage.js:
3397 (WebInspector.ConsoleMessageImpl):
3398 (WebInspector.ConsoleMessageImpl.prototype.get stackTrace):
3399 (WebInspector.ConsoleMessageImpl.prototype.clone):
3400 * inspector/front-end/ConsoleModel.js:
3401 (WebInspector.ConsoleModel.prototype._messageRepeatCountUpdated):
3402 (WebInspector.ConsoleMessage):
3403 (WebInspector.ConsoleMessage.prototype.isErrorOrWarning):
3404 (WebInspector.ConsoleMessage.prototype.updateRepeatCount):
3405 (WebInspector.ConsoleMessage.prototype.clone):
3406 * inspector/front-end/DebuggerPresentationModel.js:
3407 (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
3408 * inspector/front-end/ResourceUtils.js:
3409 * inspector/front-end/UIUtils.js:
3410 (WebInspector.resetToolbarColors):
3411 (WebInspector.populateHrefContextMenu):
3413 2011-12-26 Hajime Morrita <morrita@google.com>
3415 Unreviewed bad merge fix.
3417 * svg/SVGSVGElement.cpp:
3418 (WebCore::SVGSVGElement::didMoveToNewDocument):
3420 2011-12-25 Hajime Morrita <morrita@chromium.org>
3422 https://bugs.webkit.org/show_bug.cgi?id=74067
3423 Refactoring: Unitfy willMoveToNewDocument() and didMoveToNewDocument()
3425 Reviewed by Darin Adler.
3427 No new tests. No behavior change.
3429 This change combines two method Node::willMoveToNewOwnerDocument() and Node::didMoveToNewOwnerDocument()
3430 into Node::didMoveToNewDocument(Document* oldDocument).
3432 The intention of this change is:
3433 - Making upcoming refactoring (Bug 59816) possible. The refactoring will turn Node::m_document into
3434 Node::m_treeScope, and we will no longer have Node::setDocument() where we can invoke both
3435 willMoveToNewDocument() and didMoveToNewDocument() at once.
3436 - Killing one extra virtual method call.
3437 - Making the concept of "move" clearer by keeping such an operation into the single method.
3440 (WebCore::setWillMoveToNewDocumentWasCalled):
3441 (WebCore::setDidMoveToNewDocumentWasCalled):
3442 (WebCore::Node::setDocument):
3443 (WebCore::Node::didMoveToNewDocument):
3445 * dom/StyledElement.cpp:
3446 (WebCore::StyledElement::attributeChanged):
3447 * html/FormAssociatedElement.cpp:
3448 (WebCore::FormAssociatedElement::didMoveToNewDocument):
3449 * html/FormAssociatedElement.h:
3450 * html/HTMLFormControlElement.cpp:
3451 (WebCore::HTMLFormControlElement::didMoveToNewDocument):
3452 (WebCore::HTMLFormControlElementWithState::didMoveToNewDocument):
3453 * html/HTMLFormControlElement.h:
3454 * html/HTMLFormElement.cpp:
3455 (WebCore::HTMLFormElement::didMoveToNewDocument):
3456 * html/HTMLFormElement.h:
3457 * html/HTMLImageElement.cpp:
3458 (WebCore::HTMLImageElement::didMoveToNewDocument):
3459 * html/HTMLImageElement.h:
3460 * html/HTMLInputElement.cpp:
3461 (WebCore::HTMLInputElement::didMoveToNewDocument):
3462 * html/HTMLInputElement.h:
3463 * html/HTMLMediaElement.cpp:
3464 (WebCore::HTMLMediaElement::didMoveToNewDocument):
3465 * html/HTMLMediaElement.h:
3466 * html/HTMLObjectElement.cpp:
3467 (WebCore::HTMLObjectElement::didMoveToNewDocument):
3468 * html/HTMLObjectElement.h:
3469 * html/HTMLPlugInImageElement.cpp:
3470 (WebCore::HTMLPlugInImageElement::didMoveToNewDocument):
3471 * html/HTMLPlugInImageElement.h:
3472 * html/HTMLVideoElement.cpp:
3473 (WebCore::HTMLVideoElement::didMoveToNewDocument):
3474 * html/HTMLVideoElement.h:
3475 * html/ImageDocument.cpp:
3476 (WebCore::ImageDocumentElement::didMoveToNewDocument):