1 2011-09-08 Pavel Podivilov <podivilov@chromium.org>
3 Web Inspector: extract RawSourceCode source mapping logic to helper classes.
4 https://bugs.webkit.org/show_bug.cgi?id=67789
6 Reviewed by Pavel Feldman.
8 * inspector/front-end/SourceFile.js:
9 (WebInspector.RawSourceCode.prototype.get uiSourceCode):
10 (WebInspector.RawSourceCode.prototype.rawLocationToUILocation):
11 (WebInspector.RawSourceCode.prototype.uiLocationToRawLocation):
12 (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent.didFormatContent):
13 (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent):
14 (WebInspector.RawSourceCode.prototype._createSourceMapping):
15 (WebInspector.RawSourceCode.prototype._saveSourceMapping):
16 (WebInspector.RawSourceCode.PlainSourceMapping):
17 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.rawLocationToUILocation):
18 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiLocationToRawLocation):
19 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.get uiSourceCode):
20 (WebInspector.RawSourceCode.FormattedSourceMapping):
21 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.rawLocationToUILocation):
22 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
23 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.get uiSourceCode):
25 2011-09-20 Carlos Garcia Campos <cgarcia@igalia.com>
27 [GTK] WebProcess shouldn't use the GTK+ API
28 https://bugs.webkit.org/show_bug.cgi?id=68062
30 Reviewed by Martin Robinson.
32 Move errors code that is common between webki1 and webkit2 to
33 WebCore so that it can be shared.
35 * GNUmakefile.list.am: Add new files to compilation.
36 * platform/gtk/ErrorsGtk.cpp: Added.
37 (WebCore::cancelledError):
38 (WebCore::blockedError):
39 (WebCore::cannotShowURLError):
40 (WebCore::interruptedForPolicyChangeError):
41 (WebCore::cannotShowMIMETypeError):
42 (WebCore::fileDoesNotExistError):
43 (WebCore::pluginWillHandleLoadError):
44 * platform/gtk/ErrorsGtk.h: Added.
46 2011-09-19 Mark Rowe <mrowe@apple.com>
48 Attempt to fix the Leopard build.
50 * platform/mac/DisplaySleepDisabler.cpp:
51 (WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
52 * platform/mac/DisplaySleepDisabler.h:
54 2011-09-19 Mark Rowe <mrowe@apple.com>
56 <http://webkit.org/b/68421> Stop calling UpdateSystemActivity in places where we hold power assertions that achieve the same effect
58 On SnowLeopard and newer it's not necessary to call UpdateSystemActivity to prevent the screensaver from kicking
59 in as the NoDisplaySleep assertion now has that effect. It's also not necessary to hold both a NoDisplaySleep and
60 a NoIdleSleep assertion as the latter is implied by the former.
62 Since there were multiple copies of the same code to disable display sleep spread across WebCore, WebKit and WebKit2
63 this patch takes the approach of moving this functionality to a new DisplaySleepDisabler class that lives in WebCore.
64 A class is used as it makes it easier to reason about the lifetime of the assertions and to ensure that the assertions will
65 always be released when their owning objects go away.
67 Reviewed by Dan Bernstein.
70 * WebCore.xcodeproj/project.pbxproj:
71 * platform/mac/DisplaySleepDisabler.cpp:
72 (WebCore::DisplaySleepDisabler::DisplaySleepDisabler): Register for the NoDisplaySleep assertion, and start our
73 system activity timer when on Leopard.
74 (WebCore::DisplaySleepDisabler::~DisplaySleepDisabler): Unregister for the assertion.
75 (WebCore::DisplaySleepDisabler::systemActivityTimerFired): Call UpdateSystemActivity to prevent the screensaver from
76 triggering on Leopard.
77 * platform/mac/DisplaySleepDisabler.h:
78 (WebCore::DisplaySleepDisabler::create):
79 * platform/mac/WebVideoFullscreenController.h:
80 * platform/mac/WebVideoFullscreenController.mm:
81 (-[WebVideoFullscreenController dealloc]):
82 (-[WebVideoFullscreenController setupVideoOverlay:]): Remove the now-unnecessary explicit use of the WebCore namespace.
83 (-[WebVideoFullscreenController mediaElement]): Ditto.
84 (-[WebVideoFullscreenController setMediaElement:]): Ditto.
85 (-[WebVideoFullscreenController windowDidExitFullscreen]): Ditto.
86 (-[WebVideoFullscreenController updatePowerAssertions]): Create a DisplaySleepDisabler instance when transitioning from permitting
87 display sleep to disabling display sleep. Clear out our reference when sleep should be permitted, destroying any
90 2011-09-19 Ryosuke Niwa <rniwa@webkit.org>
92 Hit testing on margins of body and head elements doesn't recur
93 https://bugs.webkit.org/show_bug.cgi?id=40753
95 Reviewed by Darin Adler.
97 The bug was caused by positionForPointRespectingEditingBoundaries's comparing the editability
98 of head/body and html elements when hit testing was done inside margins of head and body elements.
100 Fixed the bug by special-casing html element (any immediate child of render view with a render layer)
101 since margins of head and body elements are special.
103 Tests: editing/selection/click-on-body-margin.html
104 editing/selection/click-on-head-margin.html
106 * rendering/RenderBlock.cpp:
107 (WebCore::positionForPointRespectingEditingBoundaries):
109 2011-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
111 Unreviewed, rolling out r95493 and r95496.
112 http://trac.webkit.org/changeset/95493
113 http://trac.webkit.org/changeset/95496
114 https://bugs.webkit.org/show_bug.cgi?id=68418
116 Broke Windows build (Requested by rniwa on #webkit).
118 * ForwardingHeaders/heap/AllocationSpace.h: Removed.
120 2011-09-19 James Robinson <jamesr@chromium.org>
122 [chromium] ContentLayer's texture updater deleted during paint when compositing turns off in the middle of paint
123 https://bugs.webkit.org/show_bug.cgi?id=68405
125 Reviewed by Kenneth Russell.
127 Make TiledLayerChromium's textureUpdater refcounted and hold an explicit reference during paint in case
128 compositing is turned off halfway through a paint.
130 * platform/graphics/chromium/ContentLayerChromium.h:
131 * platform/graphics/chromium/ImageLayerChromium.cpp:
132 (WebCore::ImageLayerTextureUpdater::create):
133 * platform/graphics/chromium/ImageLayerChromium.h:
134 * platform/graphics/chromium/LayerTextureUpdater.h:
135 * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
136 (WebCore::LayerTextureUpdaterBitmap::create):
137 (WebCore::LayerTextureUpdaterSkPicture::create):
138 * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
139 * platform/graphics/chromium/TiledLayerChromium.cpp:
140 (WebCore::TiledLayerChromium::prepareToUpdate):
142 2011-09-19 Luke Macpherson <macpherson@chromium.org>
144 Eliminate Length::undefinedLength = -1 and replace with Undefined LengthType.
145 https://bugs.webkit.org/show_bug.cgi?id=68057
147 Reviewed by Darin Adler.
149 There appear to be many cases where -1 is actually a valid Length.
150 Encoding the validity of Length separately to the value is a natural solution.
152 No new tests / no behavioral changes.
154 * css/CSSComputedStyleDeclaration.cpp:
155 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
156 * css/CSSPrimitiveValue.cpp:
157 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
158 * css/CSSStyleApplyProperty.cpp:
159 (WebCore::ApplyPropertyLength::applyValue):
161 (WebCore::Length::Length):
162 (WebCore::Length::value):
163 (WebCore::Length::calcValue):
164 (WebCore::Length::calcMinValue):
165 (WebCore::Length::calcFloatValue):
166 (WebCore::Length::isUndefined):
167 * rendering/RenderBlock.cpp:
168 (WebCore::RenderBlock::computePreferredLogicalWidths):
169 * rendering/RenderDeprecatedFlexibleBox.cpp:
170 (WebCore::RenderDeprecatedFlexibleBox::computePreferredLogicalWidths):
171 * rendering/RenderFileUploadControl.cpp:
172 (WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
173 * rendering/RenderImage.cpp:
174 (WebCore::RenderImage::isLogicalWidthSpecified):
175 (WebCore::RenderImage::isLogicalHeightSpecified):
176 * rendering/RenderListBox.cpp:
177 (WebCore::RenderListBox::computePreferredLogicalWidths):
178 * rendering/RenderMenuList.cpp:
179 (WebCore::RenderMenuList::computePreferredLogicalWidths):
180 * rendering/RenderReplaced.cpp:
181 (WebCore::RenderReplaced::computePreferredLogicalWidths):
182 * rendering/RenderSlider.cpp:
183 (WebCore::RenderSlider::computePreferredLogicalWidths):
184 * rendering/RenderTextControl.cpp:
185 (WebCore::RenderTextControl::computePreferredLogicalWidths):
186 * rendering/style/RenderStyle.h:
187 (WebCore::InheritedFlags::initialMaxSize):
188 * rendering/svg/RenderSVGRoot.cpp:
189 (WebCore::RenderSVGRoot::computePreferredLogicalWidths):
191 2011-09-19 Adam Barth <abarth@webkit.org>
193 Always enable ENABLE(EVENTSOURCE)
194 https://bugs.webkit.org/show_bug.cgi?id=68414
196 Reviewed by Eric Seidel.
198 EventSource seems to be here to stay. This patch makes WebKit more
199 hackable by removing this ENABLE macro, as discussed on webkit-dev.
201 * Configurations/FeatureDefines.xcconfig:
203 * bindings/cpp/WebDOMEventTarget.cpp:
205 * bindings/js/JSDOMWindowCustom.cpp:
206 (WebCore::JSDOMWindow::eventSource):
207 * bindings/js/JSEventSourceCustom.cpp:
208 * bindings/js/JSEventTarget.cpp:
210 (WebCore::toEventTarget):
211 * bindings/js/JSWorkerContextCustom.cpp:
212 (WebCore::JSWorkerContext::eventSource):
213 * bindings/v8/V8DOMWrapper.cpp:
214 (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
216 * page/DOMWindow.idl:
217 * page/EventSource.cpp:
218 * page/EventSource.h:
219 * page/EventSource.idl:
220 * workers/WorkerContext.idl:
222 2011-09-19 Jeremy Apthorp <jeremya@chromium.org>
224 Fix a use-after-free: clear the fullscreen change event target queue at
225 detach time, rather than at destruction time. If this isn't done, it's
226 possible for the event target queue to be the only thing that
227 references the document. Then when the document is popped off the queue
228 and dereferenced in Document::fullScreenChangeDelayTimerFired, the
229 document is destroyed and the subsequent access to
230 m_fullScreenChangeEventTargetQueue.isEmpty() accesses free'd memory.
231 https://bugs.webkit.org/show_bug.cgi?id=67960
233 Reviewed by Adam Barth.
236 (WebCore::Document::~Document):
237 (WebCore::Document::detach):
239 2011-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
241 Unreviewed, rolling out r95482.
242 http://trac.webkit.org/changeset/95482
243 https://bugs.webkit.org/show_bug.cgi?id=68410
245 Broke chromium webkit-tests (Requested by dslomov on #webkit).
247 * platform/image-encoders/skia/JPEGImageEncoder.cpp:
248 (WebCore::RGBAtoRGB):
250 2011-09-19 Oliver Hunt <oliver@apple.com>
252 Refactor Heap allocation logic into separate AllocationSpace class
253 https://bugs.webkit.org/show_bug.cgi?id=68409
255 Reviewed by Gavin Barraclough.
257 Adding a forwarding header.
259 * ForwardingHeaders/heap/AllocationSpace.h: Added.
261 2011-09-19 Adam Barth <abarth@webkit.org>
263 [V8] document.all gets confused about its prototype chain
264 https://bugs.webkit.org/show_bug.cgi?id=68393
266 Reviewed by Eric Seidel.
268 GetRealNamedPropertyInPrototypeChain doesn't call interceptors, so it's
269 not a good idea to use its return value. It turns out that all the
270 callers of the API only cared about whether it returns a null handle.
272 Test: http/tests/security/document-all.html
274 * bindings/v8/V8Collection.h:
275 (WebCore::collectionNamedPropertyGetter):
276 * bindings/v8/custom/V8DOMStringMapCustom.cpp:
277 (WebCore::V8DOMStringMap::namedPropertyDeleter):
278 (WebCore::V8DOMStringMap::namedPropertySetter):
279 * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
280 (WebCore::V8HTMLAllCollection::namedPropertyGetter):
281 * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
282 (WebCore::V8HTMLCollection::namedPropertyGetter):
283 * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
284 (WebCore::V8NamedNodeMap::namedPropertyGetter):
285 * bindings/v8/custom/V8StorageCustom.cpp:
286 (WebCore::storageSetter):
288 2011-09-19 Adam Barth <abarth@webkit.org>
290 Named property confusion with __proto__
291 https://bugs.webkit.org/show_bug.cgi?id=68221
293 Reviewed by Eric Seidel.
295 The __proto__ property is super magical because it's not a real named
296 property and it has higher precedence than even interceptors. This
297 confuses this check, which is meant to detech which names will get
298 handled by our interceptor.
300 Test: http/tests/security/window-named-proto.html
302 * bindings/v8/custom/V8DOMWindowCustom.cpp:
303 (WebCore::V8DOMWindow::namedSecurityCheck):
305 2011-09-19 Adam Barth <abarth@webkit.org>
307 Rename ENABLE(OPENTYPE_SANITIZER) to USE(OPENTYPE_SANITIZER)
308 https://bugs.webkit.org/show_bug.cgi?id=68292
310 Reviewed by Eric Seidel.
312 OpenType Sanitizer is a library for sanitizing type and not a feature.
313 Therefore this macro should say that we USE the library.
315 * platform/graphics/WOFFFileFormat.cpp:
316 * platform/graphics/WOFFFileFormat.h:
317 * platform/graphics/mac/FontCustomPlatformData.cpp:
318 (WebCore::createFontCustomPlatformData):
319 * platform/graphics/opentype/OpenTypeSanitizer.cpp:
320 * platform/graphics/opentype/OpenTypeSanitizer.h:
321 * platform/graphics/skia/FontCustomPlatformData.cpp:
322 (WebCore::createFontCustomPlatformData):
323 (WebCore::FontCustomPlatformData::supportsFormat):
325 2011-09-19 Adam Barth <abarth@webkit.org>
327 Remove APPLICATION_CACHE_DYNAMIC_ENTRIES and associated code
328 https://bugs.webkit.org/show_bug.cgi?id=68407
330 Reviewed by Eric Seidel.
332 As discussed on webkit-dev, no one appears to be using this code.
334 * GNUmakefile.list.am:
338 * WebCore.vcproj/WebCore.vcproj:
339 * WebCore.xcodeproj/project.pbxproj:
340 * bindings/js/JSBindingsAllInOne.cpp:
341 * bindings/js/JSDOMApplicationCacheCustom.cpp: Removed.
343 2011-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
345 Unreviewed, rolling out r95385 and r95457.
346 http://trac.webkit.org/changeset/95385
347 http://trac.webkit.org/changeset/95457
348 https://bugs.webkit.org/show_bug.cgi?id=68395
350 Broke chromium browser_tests (Requested by dslomov on
353 * bindings/v8/V8DOMWindowShell.cpp:
354 (WebCore::V8DOMWindowShell::disposeContextHandles):
355 (WebCore::V8DOMWindowShell::initContextIfNeeded):
356 * bindings/v8/V8IsolatedContext.cpp:
357 (WebCore::V8IsolatedContext::V8IsolatedContext):
358 (WebCore::V8IsolatedContext::destroy):
359 * bindings/v8/V8IsolatedContext.h:
360 * loader/EmptyClients.h:
361 (WebCore::EmptyFrameLoaderClient::didCreateScriptContextForFrame):
362 (WebCore::EmptyFrameLoaderClient::didDestroyScriptContextForFrame):
363 (WebCore::EmptyFrameLoaderClient::didCreateIsolatedScriptContext):
364 * loader/FrameLoaderClient.h:
366 2011-09-19 John Bauman <jbauman@chromium.org>
368 Fix nonpremultiplied webgl toDataURL to jpeg
369 https://bugs.webkit.org/show_bug.cgi?id=68366
371 The canvas spec says that toDataURL to formats without an alpha must
372 be "composited onto a solid black background using the source-over
375 Reviewed by Kenneth Russell.
377 * platform/image-encoders/skia/JPEGImageEncoder.cpp:
378 (WebCore::RGBAtoRGB):
380 2011-09-19 Chris Marrin <cmarrin@apple.com>
382 Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction
383 https://bugs.webkit.org/show_bug.cgi?id=67510
385 Reviewed by Adam Roben.
387 Another fix to take care of one last crash when running pause-crash.html.
388 CACF can't deal with null valueFunctions, so avoid setting it when it doesn't
391 This also adds logic to the Windows Hook in LayerChangesFlusher to prevent it
392 from catching the null pointer exception generated by the pause-crash.html test
393 before this bug was fixed. Windows was ignoring the exception, so the testcase
394 would appear to succeed, even though it should have crashed.
396 This is a resubmission of http://trac.webkit.org/changeset/95243 with a build fix.
398 * WebCore.vcproj/WebCore.vcproj:
399 * platform/graphics/ca/win/LayerChangesFlusher.cpp:
400 (WebCore::LayerChangesFlusher::hookCallback):
401 * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
402 (PlatformCAAnimation::copy):
403 * platform/win/StructuredExceptionHandlerSupressor.h: Added.
404 (WebCore::StructuredExceptionHandlerSupressor::StructuredExceptionHandlerSupressor):
405 (WebCore::StructuredExceptionHandlerSupressor::~StructuredExceptionHandlerSupressor):
407 2011-09-19 Ryosuke Niwa <rniwa@webkit.org>
409 Incorrect selection with absolutely positioned div
410 https://bugs.webkit.org/show_bug.cgi?id=39503
412 Reviewed by Kenneth Rohde Christiansen.
414 The bug was caused by a false assumption in RenderBlock::positionForPoint. Because the last child box
415 can be positioned, floated, invisible, etc..., we can't always trust last child's logicalTop to tell us
416 whether a given point is inside or below the last child box.
418 Fixed the bug by using the last hit-test candidate instead.
420 Test: editing/selection/block-with-positioned-lastchild.html
422 * rendering/RenderBlock.cpp:
423 (WebCore::RenderBlock::positionForPoint):
425 2011-09-19 Dmitry Titov <dimich@chromium.org>
427 [Chromium] Crash after magic iframe transfer for Pepper/NaCl plugins.
428 https://bugs.webkit.org/show_bug.cgi?id=68267
429 Make adoptNode() to not enable live iframe transfer when the iframe's subtree contains plugins.
431 Reviewed by Adam Barth.
433 Test: fast/frames/iframe-reparenting-embed-elements.html
436 (WebCore::Document::adoptNode):
437 * html/HTMLFrameElementBase.cpp:
438 (WebCore::hasPluginElements):
439 (WebCore::HTMLFrameElementBase::canRemainAliveOnRemovalFromTree):
440 * html/HTMLFrameElementBase.h:
442 2011-09-19 Abhishek Arya <inferno@chromium.org>
444 Issues with merging ruby bases.
445 https://bugs.webkit.org/show_bug.cgi?id=67240
447 Reviewed by James Robinson.
449 1) Change fromBeforeChild to beforeChild to match
450 webkit rendering naming conventions.
451 2) Add assert to verify ruby base is indeed emptied
452 after collecting all children in a single base.
453 3) Fix condition in mergeBlockChildren to bail out only
454 when we have no children and there is no work to merge
457 Test: fast/ruby/ruby-overhang-crash.html
459 * rendering/RenderRubyBase.cpp:
460 (WebCore::RenderRubyBase::moveChildren):
461 (WebCore::RenderRubyBase::moveInlineChildren):
462 (WebCore::RenderRubyBase::moveBlockChildren):
463 (WebCore::RenderRubyBase::mergeBlockChildren):
464 * rendering/RenderRubyBase.h:
465 * rendering/RenderRubyRun.cpp:
466 (WebCore::RenderRubyRun::removeChild):
468 2011-09-16 Abhishek Arya <inferno@chromium.org>
470 Child not placed correctly when beforeChild (table part)
471 has both :before, :after content.
472 https://bugs.webkit.org/show_bug.cgi?id=67656
474 Reviewed by James Robinson.
476 Tests: fast/table/table-cell-before-after-content-around-table-block.html
477 fast/table/table-cell-before-after-content-around-table-row.html
478 fast/table/table-cell-before-after-content-around-table.html
479 fast/table/table-row-before-after-content-around-block.html
480 fast/table/table-row-before-after-content-around-table.html
482 * rendering/RenderBlock.cpp:
483 (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
484 1. Use the new helper functions findAfterContentRenderer,
486 2. Rename anonymousChild to better name - beforeChildAnonymousContainer.
487 * rendering/RenderObject.cpp:
488 (WebCore::RenderObject::addChild):
489 When adding a new child, if beforeChild is a table part(
490 Table/TableSection/TableRow), we need to check if both
491 :before, :after content are shoved in one of the anonymous child.
492 If yes, we need to split the :before, :after content before adding
493 newChild. Easiest approach is to destroy the :before content, then add
494 the newChild and then call updateBeforeAfterContent to recreate the
496 * rendering/RenderObject.h:
497 (WebCore::RenderObject::findBeforeContentRenderer): same as
498 beforePseudoElementRenderer, but ignores text childs since they are
500 (WebCore::RenderObject::findAfterContentRenderer): same.
501 (WebCore::RenderObject::anonymousContainer):
502 (WebCore::objectIsRelayoutBoundary):
503 * rendering/RenderTable.cpp:
504 (WebCore::RenderTable::addChild): use the new helpers and functionally
505 correct functions - findAfterContentRenderer, anonymousContainer. previous
506 implementation was wrong since it would not go inside, if :after content
507 is embedded deeper than one level.
508 * rendering/RenderTableRow.cpp:
509 (WebCore::RenderTableRow::addChild): same.
510 * rendering/RenderTableSection.cpp:
511 (WebCore::RenderTableSection::addChild): same.
513 2011-09-19 Robert Kroeger <rjkroege@chromium.org>
515 [chromium] Gesture recognizer fires taptype only every other touch
516 down/up sequence https://bugs.webkit.org/show_bug.cgi?id=68368
518 Reviewed by Adam Barth.
520 The addition of doubletap detection to the gesture recognizer missed some of the
521 outgoing edges in the recognizer state machine. This change simplifies the logic
522 and handles all outgoing edges.
524 * platform/chromium/GestureRecognizerChromium.cpp:
525 (WebCore::GestureRecognizerChromium::GestureRecognizerChromium):
526 (WebCore::GestureRecognizerChromium::isInSecondClickTimeWindow):
527 (WebCore::GestureRecognizerChromium::updateValues):
528 (WebCore::GestureRecognizerChromium::touchDown):
529 (WebCore::GestureRecognizerChromium::click):
530 * platform/chromium/GestureRecognizerChromium.h:
532 2011-09-19 Tom Sepez <tsepez@chromium.org>
534 Fix xssauditor bypass with unterminated closing tag by making the HTMLSourceTracker
535 and the HTMLParser interact more closely with each other. HTMLParser should be
536 setting the end range for the token itself to account for buffering that the
537 HTMLSourceTracker can't know about, but there are a lot of paths that would need
538 updating. First step is to cover this one path.
539 https://bugs.webkit.org/show_bug.cgi?id=68281
541 Reviewed by Adam Barth.
543 Test: http/tests/security/xssAuditor/script-tag-with-invalid-closing-tag.html
545 * html/parser/HTMLSourceTracker.cpp:
546 (WebCore::HTMLSourceTracker::end):
547 * html/parser/HTMLTokenizer.cpp:
548 (WebCore::HTMLTokenizer::nextToken):
550 2011-09-19 Peter Rybin <peter.rybin@gmail.com>
552 TextPosition refactoring: Merge ZeroBasedNumber and OneBasedNumber classes
553 https://bugs.webkit.org/show_bug.cgi?id=63541
555 Reviewed by Adam Barth.
557 No new tests because this patch is not changing behavior.
559 * bindings/js/JavaScriptCallFrame.cpp:
560 (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
561 * bindings/js/JavaScriptCallFrame.h:
562 (WebCore::JavaScriptCallFrame::create):
563 (WebCore::JavaScriptCallFrame::position):
564 (WebCore::JavaScriptCallFrame::update):
565 * bindings/js/ScriptController.cpp:
566 (WebCore::ScriptController::eventHandlerLineNumber):
567 * bindings/js/ScriptDebugServer.cpp:
568 (WebCore::ScriptDebugServer::hasBreakpoint):
569 (WebCore::ScriptDebugServer::dispatchDidParseSource):
570 (WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
571 (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
572 * bindings/js/ScriptDebugServer.h:
573 * bindings/js/ScriptSourceCode.h:
574 (WebCore::ScriptSourceCode::ScriptSourceCode):
575 * bindings/js/StringSourceProvider.h:
576 (WebCore::StringSourceProvider::create):
577 (WebCore::StringSourceProvider::startPosition):
578 (WebCore::StringSourceProvider::StringSourceProvider):
579 * bindings/v8/ScheduledAction.cpp:
580 (WebCore::ScheduledAction::ScheduledAction):
581 * bindings/v8/ScriptController.cpp:
582 (WebCore::ScriptController::eventHandlerPosition):
583 * bindings/v8/ScriptController.h:
584 * bindings/v8/ScriptEventListener.cpp:
585 (WebCore::createAttributeEventListener):
586 * bindings/v8/ScriptSourceCode.h:
587 (WebCore::ScriptSourceCode::ScriptSourceCode):
588 (WebCore::ScriptSourceCode::startPosition):
589 * bindings/v8/V8LazyEventListener.cpp:
590 (WebCore::V8LazyEventListener::V8LazyEventListener):
591 * bindings/v8/V8LazyEventListener.h:
592 (WebCore::V8LazyEventListener::create):
593 * bindings/v8/V8Proxy.cpp:
594 (WebCore::V8Proxy::compileScript):
595 (WebCore::V8Proxy::evaluate):
596 (WebCore::V8Proxy::runScript):
597 * bindings/v8/V8Proxy.h:
598 * bindings/v8/WorkerContextExecutionProxy.cpp:
599 (WebCore::WorkerContextExecutionProxy::evaluate):
600 (WebCore::WorkerContextExecutionProxy::runScript):
601 * bindings/v8/WorkerContextExecutionProxy.h:
602 * bindings/v8/WorkerScriptController.cpp:
603 (WebCore::WorkerScriptController::evaluate):
604 * dom/PendingScript.cpp:
605 (WebCore::PendingScript::releaseElementAndClear):
606 * dom/PendingScript.h:
607 (WebCore::PendingScript::PendingScript):
608 (WebCore::PendingScript::startingPosition):
609 (WebCore::PendingScript::setStartingPosition):
610 * dom/ScriptElement.cpp:
611 (WebCore::ScriptElement::prepareScript):
612 * dom/ScriptElement.h:
613 * dom/ScriptableDocumentParser.h:
614 * dom/ViewportArguments.cpp:
615 (WebCore::parserLineNumber):
616 * html/parser/HTMLDocumentParser.cpp:
617 (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
618 (WebCore::HTMLDocumentParser::pumpTokenizer):
619 (WebCore::HTMLDocumentParser::lineNumber):
620 (WebCore::HTMLDocumentParser::textPosition):
621 * html/parser/HTMLDocumentParser.h:
622 * html/parser/HTMLInputStream.h:
623 * html/parser/HTMLScriptRunner.cpp:
624 (WebCore::HTMLScriptRunner::execute):
625 (WebCore::HTMLScriptRunner::runScript):
626 * html/parser/HTMLScriptRunner.h:
627 * html/parser/HTMLTreeBuilder.cpp:
628 (WebCore::uninitializedPositionValue1):
629 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
630 (WebCore::HTMLTreeBuilder::takeScriptToProcess):
631 (WebCore::HTMLTreeBuilder::processEndTag):
632 (WebCore::HTMLTreeBuilder::processScriptStartTag):
633 * html/parser/HTMLTreeBuilder.h:
634 * inspector/InspectorResourceAgent.cpp:
635 (WebCore::InspectorResourceAgent::buildInitiatorObject):
636 * platform/text/SegmentedString.cpp:
637 (WebCore::SegmentedString::currentLine):
638 (WebCore::SegmentedString::currentColumn):
639 (WebCore::SegmentedString::setCurrentPosition):
640 * platform/text/SegmentedString.h:
641 * svg/SVGDocumentExtensions.cpp:
642 (WebCore::parserLineNumber):
644 (WebCore::XMLErrors::XMLErrors):
645 (WebCore::XMLErrors::handleError):
646 (WebCore::XMLErrors::appendErrorMessage):
648 * xml/parser/MarkupTokenizerBase.h:
649 (WebCore::MarkupTokenizerBase::lineNumber):
650 * xml/parser/NewXMLDocumentParser.cpp:
651 (WebCore::NewXMLDocumentParser::processScript):
652 (WebCore::NewXMLDocumentParser::textPosition):
653 (WebCore::NewXMLDocumentParser::lineNumber):
654 * xml/parser/NewXMLDocumentParser.h:
655 * xml/parser/XMLDocumentParser.cpp:
656 (WebCore::XMLDocumentParser::pushCurrentNode):
657 (WebCore::XMLDocumentParser::handleError):
658 * xml/parser/XMLDocumentParser.h:
659 * xml/parser/XMLDocumentParserLibxml2.cpp:
660 (WebCore::PendingCallbacks::appendErrorCallback):
661 (WebCore::XMLDocumentParser::XMLDocumentParser):
662 (WebCore::XMLDocumentParser::doWrite):
663 (WebCore::XMLDocumentParser::startElementNs):
664 (WebCore::XMLDocumentParser::error):
665 (WebCore::XMLDocumentParser::lineNumber):
666 (WebCore::XMLDocumentParser::columnNumber):
667 (WebCore::XMLDocumentParser::textPosition):
668 * xml/parser/XMLDocumentParserQt.cpp:
669 (WebCore::XMLDocumentParser::XMLDocumentParser):
670 (WebCore::XMLDocumentParser::doWrite):
671 (WebCore::XMLDocumentParser::doEnd):
672 (WebCore::XMLDocumentParser::lineNumber):
673 (WebCore::XMLDocumentParser::columnNumber):
674 (WebCore::XMLDocumentParser::textPosition):
675 (WebCore::XMLDocumentParser::parse):
676 (WebCore::XMLDocumentParser::parseStartElement):
678 2011-09-19 Dan Bernstein <mitz@apple.com>
680 WebCore part of [mac] WebKit contains Objective-C classes that are not prefixed with its standard prefixes
681 https://bugs.webkit.org/show_bug.cgi?id=68323
683 Reviewed by Sam Weinig.
685 Renamed AccessibilityObjectWrapper to WebAccessibilityObjectWrapper.
686 Renamed CascadeList to WebCascadeList.
687 Renamed CookieStorageObjCAdapter to WebCookieStorageObjCAdapter.
688 Renamed LanguageChangeObserver to WebLanguageChangeObserver.
689 Renamed ScrollAnimationHelperDelegate to WebScrollAnimationHelperDelegate.
690 Renamed ScrollbarPainterControllerDelegate to WebScrollbarPainterControllerDelegate.
691 Renamed ScrollbarPainterDelegate to WebScrollbarPainterDelegate.
692 Renamed ScrollbarPartAnimation to WebScrollbarPartAnimation.
693 Renamed ScrollbarPrefsObserver to WebScrollbarPrefsObserver.
695 * WebCore.gyp/WebCore.gyp: Updated for the renaming of CascadeList to WebCascadeList.
696 * WebCore.xcodeproj/project.pbxproj:
697 * accessibility/AccessibilityObject.h:
698 * accessibility/mac/AXObjectCacheMac.mm:
699 (WebCore::AXObjectCache::attachWrapper):
700 * accessibility/mac/AccessibilityObjectMac.mm:
701 * accessibility/mac/AccessibilityObjectWrapper.h: Removed.
702 * accessibility/mac/AccessibilityObjectWrapper.mm: Removed.
703 * accessibility/mac/WebAccessibilityObjectWrapper.h: Copied from Source/WebCore/accessibility/mac/AccessibilityObjectWrapper.h.
704 * accessibility/mac/WebAccessibilityObjectWrapper.mm: Copied from Source/WebCore/accessibility/mac/AccessibilityObjectWrapper.mm.
706 (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
707 (-[WebAccessibilityObjectWrapper accessibilityIndexOfChild:]):
708 (-[WebAccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
709 * platform/graphics/mac/ComplexTextControllerCoreText.mm:
710 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
711 * platform/mac/Language.mm:
712 (WebCore::platformDefaultLanguage):
713 * platform/mac/ScrollAnimatorMac.h:
714 * platform/mac/ScrollAnimatorMac.mm:
715 (-[WebScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
716 (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
717 * platform/mac/ScrollbarThemeMac.mm:
718 (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
719 * platform/network/mac/CookieStorageMac.mm:
720 (WebCore::startObservingCookieChanges):
722 2011-09-19 Cary Clark <caryclark@google.com>
724 Move fontDataForCombiningCharacterSequence to fix Skia on Mac build
725 https://bugs.webkit.org/show_bug.cgi?id=68358
727 Reviewed by Dan Bernstein.
731 * platform/graphics/mac/FontMac.mm:
732 * platform/graphics/mac/FontComplexTextMac.cpp:
733 (WebCore::Font::fontDataForCombiningCharacterSequence):
734 This moves the implementation from FontMac.mm to
735 FontComplexTextMac.cpp, so it is visible to the Skia on Mac
738 2011-09-19 Jessie Berlin <jberlin@apple.com>
740 Sites that use history pushState or replaceState are recorded in history in Private Browsing
742 https://bugs.webkit.org/show_bug.cgi?id=68208
744 Reviewed by Brady Eidson.
746 Test: TestWebKitAPI/Tests/WebKit2/PrivateBrowsingPushStateNoHistoryCallback.
748 Add the privateBrowsingEnabled check that is used in other places in HistoryController
749 before calling addVisitedLink and FrameLoaderClient::updateGlobalHistory.
751 * loader/HistoryController.cpp:
752 (WebCore::HistoryController::pushState):
753 (WebCore::HistoryController::replaceState):
755 2011-09-19 Leandro Pereira <leandro@profusion.mobi>
757 Unreviewed: ScrollbarThemeMock.cpp is already referenced in the
758 global CMakeLists.txt.
760 * CMakeListsEfl.txt: Remove reference to platform/mock/ScrollbarThemeMock.cpp.
761 * CMakeListsWinCE.txt: Ditto.
763 2011-09-19 Ademar de Souza Reis Jr. <ademar.reis@openbossa.org>
765 Unreviewed: dos2unix on bindings/js/JSExceptionBase.h
767 Visual Studio is choking on this file when generating packages for
771 Source\WebCore\Bindings\js\JSExceptionBase.h:
772 error C4335: Mac file format detected: please convert the source file
773 to either DOS or UNIX format
776 Since from all .cpp or .h files shared by all ports this is the only
777 one with CRLF line terminations, I'm assuming this was a mistake.
779 * bindings/js/JSExceptionBase.h:
781 2011-09-19 Ilya Tikhonovsky <loislo@chromium.org>
783 Web Inspector: didMarkDOMContentEvent() should send event of MarkDOMContent type.
784 https://bugs.webkit.org/show_bug.cgi?id=67528
786 Reviewed by Pavel Feldman.
788 Tests: inspector/timeline/timeline-dom-content-loaded-event.html
789 inspector/timeline/timeline-load-event.html
791 * inspector/InspectorTimelineAgent.cpp:
792 (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
794 2011-09-19 Shawn Singh <shawnsingh@chromium.org>
796 Re-name LayerChromium border functions to reflect that
797 they are only for debug use.
798 https://bugs.webkit.org/show_bug.cgi?id=68212
800 Reviewed by James Robinson.
802 Code cleanup towards unit testing.
804 * platform/graphics/chromium/GraphicsLayerChromium.cpp:
805 (WebCore::GraphicsLayerChromium::clearBackgroundColor):
806 (WebCore::GraphicsLayerChromium::setDebugBackgroundColor):
807 (WebCore::GraphicsLayerChromium::setDebugBorder):
808 (WebCore::GraphicsLayerChromium::updateLayerBackgroundColor):
809 (WebCore::GraphicsLayerChromium::setupContentsLayer):
810 * platform/graphics/chromium/LayerChromium.cpp:
811 (WebCore::LayerChromium::setDebugBorderColor):
812 (WebCore::LayerChromium::setDebugBorderWidth):
813 * platform/graphics/chromium/LayerChromium.h:
815 2011-09-18 Ilya Tikhonovsky <loislo@chromium.org>
817 Web Inspector: requestAnimationFrame callbacks don't show up in the timeline panel.
818 https://bugs.webkit.org/show_bug.cgi?id=67986
820 Reviewed by Pavel Feldman.
822 Test: inspector/timeline/timeline-animation-frame.html
824 * English.lproj/localizedStrings.js:
825 * bindings/v8/V8Proxy.cpp:
826 (WebCore::V8Proxy::callFunction):
827 (WebCore::V8Proxy::callFunctionWithoutFrame):
828 (WebCore::V8Proxy::instrumentedCallFunction):
829 * bindings/v8/V8Proxy.h:
830 * bindings/v8/custom/V8CustomVoidCallback.cpp:
831 (WebCore::invokeCallback):
832 * dom/ScriptedAnimationController.cpp:
833 (WebCore::ScriptedAnimationController::registerCallback):
834 (WebCore::ScriptedAnimationController::cancelCallback):
835 (WebCore::ScriptedAnimationController::serviceScriptedAnimations):
836 * inspector/InspectorInstrumentation.cpp:
837 (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallbackImpl):
838 (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallbackImpl):
839 (WebCore::InspectorInstrumentation::willFireAnimationFrameEventImpl):
840 (WebCore::InspectorInstrumentation::didFireAnimationFrameEventImpl):
841 * inspector/InspectorInstrumentation.h:
842 (WebCore::InspectorInstrumentation::willCallFunction):
843 (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallback):
844 (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallback):
845 (WebCore::InspectorInstrumentation::willFireAnimationFrameEvent):
846 (WebCore::InspectorInstrumentation::didFireAnimationFrameEvent):
847 * inspector/InspectorTimelineAgent.cpp:
848 (WebCore::InspectorTimelineAgent::didRegisterAnimationFrameCallback):
849 (WebCore::InspectorTimelineAgent::didCancelAnimationFrameCallback):
850 (WebCore::InspectorTimelineAgent::willFireAnimationFrameEvent):
851 (WebCore::InspectorTimelineAgent::didFireAnimationFrameEvent):
852 * inspector/InspectorTimelineAgent.h:
853 * inspector/TimelineRecordFactory.cpp:
854 (WebCore::TimelineRecordFactory::createAnimationFrameCallbackData):
855 * inspector/TimelineRecordFactory.h:
856 * inspector/front-end/TimelineAgent.js:
857 * inspector/front-end/TimelinePanel.js:
858 (WebInspector.TimelinePanel):
859 (WebInspector.TimelinePanel.prototype.get _recordStyles):
860 (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
861 (WebInspector.TimelinePanel.prototype._clearPanel):
862 (WebInspector.TimelinePanel.FormattedRecord):
863 (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
864 (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
866 2011-09-19 Carlos Garcia Campos <cgarcia@igalia.com>
868 [GTK] Fix distcheck build
869 https://bugs.webkit.org/show_bug.cgi?id=68241
871 Reviewed by Martin Robinson.
873 * GNUmakefile.list.am:
875 2011-09-18 Ilya Tikhonovsky <loislo@chromium.org>
877 Web Inspector: chromium-win: "Save timeline data" does nothing.
878 https://bugs.webkit.org/show_bug.cgi?id=68313
880 windows shell API function GetSaveFileName doesn't accept file names with ':' symbol.
882 Reviewed by Pavel Feldman.
884 * inspector/front-end/TimelinePanel.js:
885 (WebInspector.TimelineModel.prototype._saveToFile):
887 2011-09-18 Dan Bernstein <mitz@apple.com>
889 Try to fix the Chromium Mac build after r95391.
891 * WebCore.gyp/WebCore.gyp:
893 2011-09-18 Dan Bernstein <mitz@apple.com>
895 Try to fix the Chromium Mac build after r95391.
897 * WebCore.gyp/WebCore.gyp:
899 2011-09-18 Dan Bernstein <mitz@apple.com>
901 Try to fix the Chromium Mac build after r95391.
903 * WebCore.gypi: Updated for the renaming of ComplexTextController.cpp.
904 * WebCore.xcodeproj/project.pbxproj: Ditto.
905 * platform/graphics/Font.h: Changed #if directives to include the Chromium Mac port.
906 * platform/graphics/SimpleFontData.h: Ditto.
907 * platform/graphics/mac/ComplexTextControllerCoreText.cpp: Changed the filename extension of this
908 Objective-C++ file to .mm.
909 * platform/graphics/mac/ComplexTextControllerCoreText.mm: Copied from Source/WebCore/platform/graphics/mac/ComplexTextControllerCoreText.cpp.
911 2011-09-18 Dan Bernstein <mitz@apple.com>
913 Snow Leopard build fix after r95391.
915 * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
916 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
918 2011-09-18 Dan Bernstein <mitz@apple.com>
920 Leopard build fix after r95391.
922 * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
923 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersATSUI):
925 2011-09-18 Dan Bernstein <mitz@apple.com>
927 Allow Core Text to choose the fallback font for rendering a combining character sequence
929 Fixes <rdar://problem/7860281> Decomposed text is displayed incorrectly when Verdana is specified
930 https://bugs.webkit.org/show_bug.cgi?id=68287
932 Reviewed by Dave Hyatt.
934 Test: platform/mac/fast/text/combining-character-sequence-fallback.html
936 * WebCore.xcodeproj/project.pbxproj: Compile ComplexTextControllerCoreText.cpp as Objective-C++.
937 I am going to rename this file in a followup patch.
939 * platform/graphics/Font.h: Declared fontDataForCombiningCharacterSequence().
941 * platform/graphics/SimpleFontData.h: Declared canRenderCombiningCharacterSequence() and added
942 a member variable to cache the results of calling this function.
944 * platform/graphics/mac/ComplexTextController.cpp:
945 (WebCore::ComplexTextController::offsetForPosition): Fixed a typo in a comment.
946 (WebCore::advanceByCombiningCharacterSequence): Added this helper function, which iterates over
947 characters until the end of a sequence of combining characters, zero-width joiners and zero-width
948 non-joiners. A single base characater followed by such a (possibly-empty) sequence is known as
949 a combining character sequence. This stretches the definition a little because the base character
950 may be a combining character as well. Returns false if an invalid UTF-16 sequence is encountered,
952 (WebCore::ComplexTextController::collectComplexTextRuns): - Replaced the glyphData and nextGlyphData
953 variables each with a pair of variables, a SimpleFontData* and a boolean indicating whether a
954 character mapped to the missing glyph. This clarifies that this function does not use glyph IDs.
955 - Renamed the local variable newC to uppercaseCharacter.
956 - Changed to use advanceByCombiningCharacterSequence().
957 - Changed to use Font::fontDataForCombiningCharacterSequence() instead of Font::glyphDataForCharacter().
958 If there are combining marks and none of the fonts in the fallback list can render the sequence alone,
959 use the systemFallbackFontData() constant to indicate to collectComplexTextRunsForCharactersCoreText()
960 to allow Core Text to perform its own fallback.
961 - Stopped checking isSmallCaps against nextIsSmallCaps. It was redundant, since the small caps FontData
962 differs from the normal variant.
963 (WebCore::ComplexTextController::collectComplexTextRunsForCharacters): Moved the common logic to
964 handle the 0 fontData case from the ATSUI and Core Text continuations of this function into this function.
966 * platform/graphics/mac/ComplexTextController.h:
967 (WebCore::ComplexTextController::systemFallbackFontData): Added. This constant is used to indicate to
968 collectComplexTextRunsForCharactersCoreText() that it should allow Core Text to perform its own font
971 * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
972 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersATSUI): Handle systemFallbackFontData()
973 by using the primary font data.
975 * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
976 (-[CascadeList initWithFont:WebCore::character:]): Added.
977 (-[CascadeList count]): Added.
978 (-[CascadeList objectAtIndex:]): Added. Returns an entry from a cascade list of CTFontDescriptorRef
979 objects based on the font’s fallback list for the character. The list is initialized lazily.
980 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Handle systemFallbackFontData()
981 by allowing Core Text to perform font fallback, starting with a cascade list based on the font’s fallback
982 list and possibly continuing with system fallback.
984 * platform/graphics/mac/FontMac.mm:
985 (WebCore::Font::fontDataForCombiningCharacterSequence): Added. If the sequence is only a base character,
986 calls through to glyphDataForCharacter(). Otherwise, iterates over the font’s fallback list for the
987 base character (and the system fallback font for that character), returning the first font that can
988 render the sequence, or 0 if there is none.
990 * platform/graphics/mac/SimpleFontDataMac.mm:
991 (WebCore::provideStringAndAttributes): Added this Core Text callback.
992 (WebCore::SimpleFontData::canRenderCombiningCharacterSequence): Added. Checks if Core Text can render
993 the sequence using only this font. Caches the result.
995 2011-09-17 Mihai Parparita <mihaip@chromium.org>
997 FrameLoaderClient BackForwardList-related methods are unsued
998 https://bugs.webkit.org/show_bug.cgi?id=68293
1000 Reviewed by Darin Adler.
1002 Remove FrameLoaderClient methods that were added by r51629, since only
1003 the old (since-deleted) Android port needed them.
1005 * history/BackForwardListImpl.cpp:
1006 (WebCore::BackForwardListImpl::addItem):
1007 (WebCore::BackForwardListImpl::goBack):
1008 (WebCore::BackForwardListImpl::goForward):
1009 (WebCore::BackForwardListImpl::goToItem):
1010 (WebCore::BackForwardListImpl::setCapacity):
1011 * loader/EmptyClients.h:
1012 * loader/FrameLoaderClient.h:
1014 2011-09-17 David Hyatt <hyatt@apple.com>
1016 https://bugs.webkit.org/show_bug.cgi?id=68307
1018 Crash in border image cssText. Make sure to null check all the components, since they're all
1021 Reviewed by Sam Weinig.
1023 Added fast/borders/border-image-slice-omission.html
1025 * css/CSSBorderImageValue.cpp:
1026 (WebCore::CSSBorderImageValue::cssText):
1028 2011-09-17 Aaron Boodman <aa@chromium.org>
1030 Rework script context creation/release notifications
1031 https://bugs.webkit.org/show_bug.cgi?id=67828
1033 Reviewed by Adam Barth.
1035 * bindings/v8/V8DOMWindowShell.cpp:
1036 (WebCore::V8DOMWindowShell::disposeContextHandles):
1037 (WebCore::V8DOMWindowShell::initContextIfNeeded):
1038 * bindings/v8/V8IsolatedContext.cpp:
1039 (WebCore::V8IsolatedContext::V8IsolatedContext):
1040 (WebCore::V8IsolatedContext::destroy):
1041 * bindings/v8/V8IsolatedContext.h:
1042 * loader/EmptyClients.h:
1043 (WebCore::EmptyFrameLoaderClient::didCreateScriptContext):
1044 (WebCore::EmptyFrameLoaderClient::willReleaseScriptContext):
1045 * loader/FrameLoaderClient.h:
1047 2011-09-17 Ilya Tikhonovsky <loislo@chromium.org>
1049 Web Inspector: file open dialog appears when user clicks on the timeline bar in timeline panel.
1050 https://bugs.webkit.org/show_bug.cgi?id=68312
1052 Reviewed by Pavel Feldman.
1054 * inspector/front-end/TimelinePanel.js:
1055 (WebInspector.TimelinePanel.prototype._createFileSelector):
1057 2011-09-17 Jeff Miller <jeffm@apple.com>
1059 Build fix after r95372.
1061 * dom/DOMAllInOne.cpp: #include "EventListenerMap.cpp"
1063 2011-09-17 Deepak Sherveghar <bpwv64@motorola.com>
1065 Override supportsFocus() for HTMLMediaElement.
1066 https://bugs.webkit.org/show_bug.cgi?id=67190
1068 Reviewed by Antonio Gomes.
1070 Tests: fast/events/media-element-focus-tab.html
1071 fast/spatial-navigation/snav-media-elements.html
1073 Return true from supportsFocus() if control's attribute is present or a tabindex is specified.
1075 * html/HTMLMediaElement.cpp:
1076 (WebCore::HTMLMediaElement::supportsFocus):
1077 * html/HTMLMediaElement.h:
1079 2011-09-16 Adam Barth <abarth@webkit.org>
1081 Rename ENABLE(LEVELDB) to USE(LEVELDB)
1082 https://bugs.webkit.org/show_bug.cgi?id=68290
1084 Reviewed by Darin Adler.
1086 LEVELDB is a library that can be used to implemented INDEXED_DATABASE,
1087 which means it should be a USE not an ENABLE.
1090 * WebCore.gyp/WebCore.gyp:
1091 * platform/leveldb/LevelDBComparator.h:
1092 * platform/leveldb/LevelDBDatabase.cpp:
1093 * platform/leveldb/LevelDBDatabase.h:
1094 * platform/leveldb/LevelDBIterator.h:
1095 * platform/leveldb/LevelDBSlice.h:
1096 * platform/leveldb/LevelDBTransaction.cpp:
1097 * platform/leveldb/LevelDBTransaction.h:
1098 * platform/leveldb/LevelDBWriteBatch.cpp:
1099 * platform/leveldb/LevelDBWriteBatch.h:
1100 * storage/IDBFactoryBackendImpl.cpp:
1101 (WebCore::IDBFactoryBackendImpl::open):
1102 (WebCore::IDBFactoryBackendImpl::migrateFromSQLiteToLevelDB):
1103 * storage/IDBLevelDBBackingStore.cpp:
1104 * storage/IDBLevelDBBackingStore.h:
1105 * storage/IDBLevelDBCoding.cpp:
1106 * storage/IDBLevelDBCoding.h:
1108 2011-09-16 Andreas Kling <kling@webkit.org>
1110 Reduce EventTarget memory usage by deferring hash map allocation
1111 until there are listeners for more than 1 event type.
1113 http://webkit.org/b/68105
1115 Reviewed by Darin Adler.
1117 Introduce an EventListenerMap class which manages a map of event types that have
1118 one or more listeners connected.
1120 When there is only one event type, it's stored directly on the EventListenerMap
1121 internally, and when more are added it moves to a hash map. It only goes back
1122 from the hash map if all the listeners are removed at once (i.e clear() is called.)
1125 * GNUmakefile.list.am:
1128 * WebCore.vcproj/WebCore.vcproj:
1129 * WebCore.xcodeproj/project.pbxproj:
1135 Export EventListenerMap::contains() for WebKit/mac.
1137 * dom/EventListenerMap.cpp: Added.
1138 (WebCore::EventListenerMap::EventListenerMap):
1139 (WebCore::EventListenerMap::~EventListenerMap):
1140 (WebCore::EventListenerMap::isEmpty):
1141 (WebCore::EventListenerMap::contains):
1142 (WebCore::EventListenerMap::clear):
1143 (WebCore::EventListenerMap::eventTypes):
1144 (WebCore::addListenerToVector):
1145 (WebCore::EventListenerMap::add):
1146 (WebCore::removeListenerFromVector):
1147 (WebCore::EventListenerMap::remove):
1148 (WebCore::EventListenerMap::find):
1149 (WebCore::removeFirstListenerCreatedFromMarkup):
1150 (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
1151 (WebCore::copyListenersNotCreatedFromMarkupToTarget):
1152 (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
1153 (WebCore::EventListenerIterator::EventListenerIterator):
1154 (WebCore::EventListenerIterator::nextListener):
1155 * dom/EventListenerMap.h: Added.
1157 * dom/EventTarget.cpp:
1158 (WebCore::EventTargetData::~EventTargetData):
1159 (WebCore::EventTarget::addEventListener):
1160 (WebCore::EventTarget::removeEventListener):
1161 (WebCore::EventTarget::fireEventListeners):
1162 (WebCore::EventTarget::getEventListeners):
1163 (WebCore::EventTarget::removeAllEventListeners):
1165 * dom/EventTarget.h:
1166 (WebCore::EventTarget::visitJSEventListeners):
1168 Use EventListenerIterator to visit listeners. (JSC specific.)
1170 * inspector/InspectorDOMAgent.cpp:
1171 (WebCore::InspectorDOMAgent::getEventListenersForNode):
1173 Call EventListenerMap::eventTypes() go get the list of event types
1174 currently listened for.
1177 (WebCore::Node::removeEventListener):
1178 * svg/SVGUseElement.cpp:
1179 (WebCore::SVGUseElement::transferEventListenersToShadowTree):
1181 Move implementations of SVG-specific hacks into EventListenerMap and
1182 call them from here.
1184 2011-09-16 Jeremy Apthorp <jeremya@chromium.org> and James Kozianski <koz@chromium.org>
1186 Don't detach elements from the render tree when entering fullscreen mode
1187 https://bugs.webkit.org/show_bug.cgi?id=66531
1189 This prevents plugin instances from being destroyed and reinstantiated
1190 when entering fullscreen mode.
1192 Reviewed by James Robinson.
1194 Test: plugins/fullscreen-plugins-dont-reload.html
1197 (WebCore::Document::webkitWillEnterFullScreenForElement):
1198 (WebCore::Document::webkitDidExitFullScreenForElement):
1199 * dom/NodeRenderingContext.cpp:
1200 (WebCore::NodeRendererFactory::createRendererIfNeeded):
1201 * rendering/RenderFullScreen.cpp:
1202 (createFullScreenStyle):
1203 (RenderFullScreen::wrapRenderer):
1204 (RenderFullScreen::unwrapRenderer):
1205 * rendering/RenderFullScreen.h:
1207 2011-09-16 Jochen Eisinger <jochen@chromium.org>
1209 Rename FrameLoaderClient::allowImages to FrameLoaderClient::allowImage and include the image URL as parameter
1210 https://bugs.webkit.org/show_bug.cgi?id=68071
1212 This will allow embedders to block images based on where the image is loaded from, instead of just blocking all images in a given frame.
1214 Reviewed by Adam Barth.
1216 * html/ImageDocument.cpp:
1217 (WebCore::ImageDocumentParser::appendBytes):
1218 * loader/FrameLoaderClient.h:
1219 (WebCore::FrameLoaderClient::allowImage):
1220 * loader/cache/CachedResourceLoader.cpp:
1221 (WebCore::CachedResourceLoader::requestImage):
1223 2011-09-16 Tom Sepez <tsepez@chromium.org>
1225 Make XSSAuditor truncate inline snippets at a reasonable length before comparison
1226 respecting boundaries of multiply urlencoded sequences.
1227 https://bugs.webkit.org/show_bug.cgi?id=68092
1229 Reviewed by Adam Barth.
1231 Test: http/tests/security/xssAuditor/property-escape-long.html
1233 * html/parser/XSSAuditor.cpp:
1234 (WebCore::XSSAuditor::filterTokenAfterScriptStartTag):
1235 (WebCore::XSSAuditor::eraseDangerousAttributesIfInjected):
1236 (WebCore::XSSAuditor::eraseAttributeIfInjected):
1237 (WebCore::XSSAuditor::decodedSnippetForAttribute):
1238 (WebCore::XSSAuditor::isContainedInRequest):
1239 * html/parser/XSSAuditor.h:
1241 2011-09-16 Shawn Singh <shawnsingh@chromium.org>
1243 Remove m_contentsDirty from LayerChromium because it
1244 is redundant with m_dirtyRect.
1245 https://bugs.webkit.org/show_bug.cgi?id=68213
1247 Reviewed by James Robinson.
1249 Code cleanup towards unit testing.
1251 * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1252 (WebCore::Canvas2DLayerChromium::updateCompositorResources):
1253 * platform/graphics/chromium/ContentLayerChromium.cpp:
1254 (WebCore::ContentLayerChromium::paintContentsIfDirty):
1255 * platform/graphics/chromium/ImageLayerChromium.cpp:
1256 (WebCore::ImageLayerChromium::paintContentsIfDirty):
1257 * platform/graphics/chromium/LayerChromium.cpp:
1258 (WebCore::LayerChromium::LayerChromium):
1259 (WebCore::LayerChromium::setNeedsDisplay):
1260 (WebCore::LayerChromium::resetNeedsDisplay):
1261 * platform/graphics/chromium/LayerChromium.h:
1262 * platform/graphics/chromium/VideoLayerChromium.cpp:
1263 (WebCore::VideoLayerChromium::updateCompositorResources):
1264 * platform/graphics/chromium/WebGLLayerChromium.cpp:
1265 (WebCore::WebGLLayerChromium::updateCompositorResources):
1267 2011-09-16 Dmitry Lomov <dslomov@google.com>
1269 https://bugs.webkit.org/show_bug.cgi?id=66714
1270 Add webkitPostMessage to allow for adding transferable support.
1271 This adds webkitPostMessage, currently identical to postMessage, which
1272 would later be a vehicle for adding transferable support for messaging.
1274 Based on patch by Luke Zarko.
1276 Reviewed by David Levin.
1278 * bindings/js/JSDOMWindowCustom.cpp:
1279 (WebCore::JSDOMWindow::webkitPostMessage):
1280 * bindings/js/JSDedicatedWorkerContextCustom.cpp:
1281 (WebCore::JSDedicatedWorkerContext::webkitPostMessage):
1282 * bindings/js/JSMessageEventCustom.cpp:
1283 (WebCore::JSMessageEvent::webkitInitMessageEvent):
1284 * bindings/js/JSMessagePortCustom.cpp:
1285 (WebCore::JSMessagePort::webkitPostMessage):
1286 * bindings/js/JSWorkerCustom.cpp:
1287 (WebCore::JSWorker::postMessage):
1288 (WebCore::JSWorker::webkitPostMessage):
1289 * bindings/v8/custom/V8DOMWindowCustom.cpp:
1290 (WebCore::handlePostMessageCallback):
1291 (WebCore::V8DOMWindow::postMessageCallback):
1292 (WebCore::V8DOMWindow::webkitPostMessageCallback):
1293 * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
1294 (WebCore::handlePostMessageCallback):
1295 (WebCore::V8DedicatedWorkerContext::postMessageCallback):
1296 (WebCore::V8DedicatedWorkerContext::webkitPostMessageCallback):
1297 * bindings/v8/custom/V8MessageEventCustom.cpp:
1298 (WebCore::V8MessageEvent::initMessageEventCallback):
1299 (WebCore::V8MessageEvent::webkitInitMessageEventCallback):
1300 * bindings/v8/custom/V8MessagePortCustom.cpp:
1301 (WebCore::handlePostMessageCallback):
1302 (WebCore::V8MessagePort::postMessageCallback):
1303 (WebCore::V8MessagePort::webkitPostMessageCallback):
1304 * bindings/v8/custom/V8WorkerCustom.cpp:
1305 (WebCore::handlePostMessageCallback):
1306 (WebCore::V8Worker::postMessageCallback):
1307 (WebCore::V8Worker::webkitPostMessageCallback):
1308 * dom/MessageEvent.idl:
1309 * dom/MessagePort.idl:
1310 * page/DOMWindow.idl:
1311 * workers/DedicatedWorkerContext.idl:
1312 * workers/Worker.idl:
1314 2011-09-16 Alexei Svitkine <asvitkine@chromium.org>
1316 Chromium: Fix repaint of rubber-band overhang area under composited path
1317 https://bugs.webkit.org/show_bug.cgi?id=68246
1319 I accidently removed these two lines from the last patch on: https://bugs.webkit.org/show_bug.cgi?id=66969
1321 Reviewed by James Robinson.
1323 Test: platform/chromium-gpu/compositing/rubberbanding/transform-overhang-size-change.html
1325 * platform/ScrollView.cpp:
1326 (WebCore::ScrollView::scrollContents):
1328 2011-09-16 Peter Beverloo <peter@chromium.org>
1330 Depend on harfbuzz for OS=Android as well
1331 https://bugs.webkit.org/show_bug.cgi?id=68239
1333 Like GTK, Android depends on harfbuzz as well, so reflect that in
1334 the project file. Furthermore, fix a compile error in PopupListBox.cpp
1335 by explicitly including ctype.h, as isspace otherwise won't be declared.
1337 Reviewed by Steve Block.
1339 * WebCore.gyp/WebCore.gyp:
1340 * platform/chromium/PopupListBox.cpp:
1342 2011-09-16 Tony Chang <tony@chromium.org>
1344 Rename flex-align values to match the spec
1345 https://bugs.webkit.org/show_bug.cgi?id=67741
1347 Reviewed by Ojan Vafai.
1349 * css/CSSParser.cpp:
1350 (WebCore::CSSParser::parseValue):
1351 * css/CSSPrimitiveValueMappings.h:
1352 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1353 (WebCore::CSSPrimitiveValue::operator EFlexAlign):
1354 * css/CSSValueKeywords.in:
1355 * rendering/style/RenderStyleConstants.h:
1357 2011-09-16 Kentaro Hara <haraken@chromium.org>
1359 Implement an ErrorEvent constructor for JSC
1360 https://bugs.webkit.org/show_bug.cgi?id=68148
1362 Reviewed by Sam Weinig.
1364 The spec for the ErrorEvent constructor is here:
1365 http://dev.w3.org/html5/workers/#errorevent
1367 Test: fast/events/constructors/error-event-constructor.html
1369 * bindings/generic/EventConstructors.h: Added a definition for the ErrorEvent constructor.
1370 * bindings/js/JSEventConstructors.cpp: Added #includes for ErrorEvent.
1371 * dom/ErrorEvent.cpp:
1372 (WebCore::ErrorEventInit::ErrorEventInit):
1373 (WebCore::ErrorEvent::ErrorEvent):
1374 (WebCore::ErrorEvent::initErrorEvent):
1375 (WebCore::ErrorEvent::isErrorEvent):
1376 * dom/ErrorEvent.h: Added a definition for ErrorEventInit.
1377 (WebCore::ErrorEvent::create):
1378 (WebCore::ErrorEvent::message):
1379 (WebCore::ErrorEvent::filename):
1380 (WebCore::ErrorEvent::lineno):
1381 * dom/ErrorEvent.idl: Makes ErrorEvent constructible.
1383 2011-09-16 Kentaro Hara <haraken@google.com>
1385 Overhangs a ruby by no more than half the width of the neighboring text.
1386 https://bugs.webkit.org/show_bug.cgi?id=62684
1388 Reviewed by Dan Bernstein.
1390 Assume two rubies between which a narrow text exists, like
1391 "<ruby>x<rt>xxxxxx</rt></ruby>l<ruby>y<rt>yyyyyy</rt></ruby>".
1392 In order to avoid the two rubies overlapping with each other,
1393 this patch overhangs the ruby by no more than half the ruby font
1394 size and no more than half the width of the neighboring text.
1396 Tests: fast/ruby/overhang-horizontal-no-overlap1.html
1397 fast/ruby/overhang-horizontal-no-overlap2.html
1398 fast/ruby/overhang-vertical-no-overlap1.html
1399 fast/ruby/overhang-vertical-no-overlap2.html
1401 * rendering/RenderRubyRun.cpp:
1402 (WebCore::RenderRubyRun::getOverhang): Calculates the width of ruby overhanging.
1404 2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
1406 Unreviewed, rolling out r95304.
1407 http://trac.webkit.org/changeset/95304
1408 https://bugs.webkit.org/show_bug.cgi?id=68299
1410 Broke GTK+ builds. It pulls derived headers into main.c
1411 (Requested by rniwa on #webkit).
1413 * bindings/scripts/CodeGeneratorGObject.pm:
1415 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
1416 * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
1417 * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
1418 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
1419 * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
1420 * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
1421 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
1422 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
1423 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
1424 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
1425 (webkit_dom_test_obj_conditional_method1):
1426 (webkit_dom_test_obj_conditional_method2):
1427 (webkit_dom_test_obj_conditional_method3):
1428 (webkit_dom_test_obj_get_conditional_attr1):
1429 (webkit_dom_test_obj_set_conditional_attr1):
1430 (webkit_dom_test_obj_get_conditional_attr2):
1431 (webkit_dom_test_obj_set_conditional_attr2):
1432 (webkit_dom_test_obj_get_conditional_attr3):
1433 (webkit_dom_test_obj_set_conditional_attr3):
1434 (webkit_dom_test_obj_set_property):
1435 (webkit_dom_test_obj_get_property):
1436 (webkit_dom_test_obj_class_init):
1437 * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
1438 * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
1439 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
1440 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
1441 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
1443 2011-09-16 Shawn Singh <shawnsingh@chromium.org>
1445 Re-named isRootLayer to isNonCompositedContent because
1446 that is what the flag actually means.
1447 https://bugs.webkit.org/show_bug.cgi?id=68214
1449 Reviewed by James Robinson.
1451 Code cleanup towards unit testing.
1453 * platform/graphics/chromium/LayerChromium.cpp:
1454 (WebCore::LayerChromium::LayerChromium):
1455 (WebCore::LayerChromium::pushPropertiesTo):
1456 * platform/graphics/chromium/LayerChromium.h:
1457 (WebCore::LayerChromium::setIsNonCompositedContent):
1458 (WebCore::LayerChromium::isNonCompositedContent):
1459 * platform/graphics/chromium/NonCompositedContentHost.cpp:
1460 (WebCore::NonCompositedContentHost::NonCompositedContentHost):
1461 * platform/graphics/chromium/TiledLayerChromium.cpp:
1462 (WebCore::TiledLayerChromium::setLayerTreeHost):
1463 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1464 (WebCore::CCLayerImpl::CCLayerImpl):
1465 * platform/graphics/chromium/cc/CCLayerImpl.h:
1466 (WebCore::CCLayerImpl::setIsNonCompositedContent):
1467 (WebCore::CCLayerImpl::isNonCompositedContent):
1468 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
1469 (WebCore::CCTiledLayerImpl::draw):
1471 2011-09-16 Simon Fraser <simon.fraser@apple.com>
1473 Make custom scrollbar theme for use in DRT, to reduce pixel diffs between platforms
1474 https://bugs.webkit.org/show_bug.cgi?id=68134
1476 Reviewed by Sam Weinig.
1478 Add a new setting to control whether the mock scrollbar theme is used.
1479 This is a global setting, so that it can be set without having to
1480 access a specific Settings object.
1483 (WebCore::Settings::setMockScrollbarsEnabled):
1484 (WebCore::Settings::mockScrollbarsEnabled):
1486 2011-09-16 Ben Wells <benwells@chromium.org>
1488 Large canvas fills should not crash or create unnecessarily large image buffers
1489 https://bugs.webkit.org/show_bug.cgi?id=67988
1491 When using source-in, destination-in, source-out, or destination-atop a temporary
1492 buffer is created. This buffer only needs to be big enough to cover the intersection
1493 of the path and the canvas. If the area of intersection between the fill and the
1494 canvas is empty the canvas is completely cleared and a temporary buffer is not used.
1496 This change also adds some null checks for failures to create contexts or buffers.
1498 Reviewed by Darin Adler.
1500 Test: fast/canvas/canvas-large-fills.html
1502 * html/canvas/CanvasRenderingContext2D.cpp:
1503 (WebCore::CanvasRenderingContext2D::clearCanvas):
1504 (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere):
1506 2011-09-16 Shawn Singh <shawnsingh@chromium.org>
1508 Remove default NULL argument in LayerChromium::create().
1509 https://bugs.webkit.org/show_bug.cgi?id=68211
1511 Reviewed by James Robinson.
1513 Code cleanup related to creating unit testing.
1515 * platform/graphics/chromium/LayerChromium.h:
1517 2011-09-16 Adrienne Walker <enne@google.com>
1519 [chromium] Move quad drawing code from LayerChromium to LayerRendererChromium
1520 https://bugs.webkit.org/show_bug.cgi?id=68272
1522 Reviewed by James Robinson.
1524 All the OpenGL code is in LayerRendererChromium and the CCLayerImpl
1525 tree, so move the static drawTexturedQuad/toGLMatrix functions to
1526 LayerRendererChromium, where they really belong.
1528 Just moving code around. Tested by existing compositor tests.
1530 * platform/graphics/chromium/LayerChromium.cpp:
1531 * platform/graphics/chromium/LayerChromium.h:
1532 * platform/graphics/chromium/LayerRendererChromium.cpp:
1533 (WebCore::LayerRendererChromium::toGLMatrix):
1534 (WebCore::LayerRendererChromium::drawTexturedQuad):
1535 * platform/graphics/chromium/LayerRendererChromium.h:
1536 * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
1537 (WebCore::CCCanvasLayerImpl::draw):
1538 * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
1539 (WebCore::CCHeadsUpDisplay::draw):
1540 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1541 (WebCore::CCLayerImpl::drawDebugBorder):
1542 * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
1543 (WebCore::CCPluginLayerImpl::draw):
1544 * platform/graphics/chromium/cc/CCRenderSurface.cpp:
1545 (WebCore::CCRenderSurface::drawSurface):
1546 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
1547 (WebCore::CCTiledLayerImpl::drawTiles):
1548 * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
1549 (WebCore::CCVideoLayerImpl::drawYUV):
1550 (WebCore::CCVideoLayerImpl::drawRGBA):
1552 2011-09-16 Shawn Singh <shawnsingh@chromium.org>
1554 Fixed const correctness on accessors in LayerChromium
1555 https://bugs.webkit.org/show_bug.cgi?id=68210
1557 Reviewed by James Robinson.
1559 Code cleanup related to creating unit testing.
1561 * platform/graphics/chromium/LayerChromium.h:
1562 (WebCore::LayerChromium::preserves3D):
1563 (WebCore::LayerChromium::replicaLayer):
1565 2011-09-14 Ryosuke Niwa <rniwa@webkit.org>
1567 Deleting line break before h1 converts h1 to span
1568 https://bugs.webkit.org/show_bug.cgi?id=45784
1570 Reviewed by Kenneth Rohde Christiansen.
1572 Fixed the bug by treating h1 and other elements that retain structure like Mail blockquote.
1574 We already had a logic to overriding styles of merged paragraphs by Mail blockquote so
1575 just extend this logic for h1-h6, pre, etc...
1577 Tests: editing/deleting/merge-paragraph-from-address.html
1578 editing/deleting/merge-paragraph-from-h6-with-style.html
1579 editing/deleting/merge-paragraph-from-h6.html
1580 editing/deleting/merge-paragraph-from-listing.html
1581 editing/deleting/merge-paragraph-into-h1-with-style.html
1582 editing/deleting/merge-paragraph-into-h1.html
1583 editing/deleting/merge-paragraph-into-pre.html
1585 * editing/ReplaceSelectionCommand.cpp:
1586 (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
1587 * editing/markup.cpp:
1588 (WebCore::isBlockNodeToRetainAppearance): Extracted from ancestorToRetainStructureAndAppearance.
1589 (WebCore::StyledMarkupAccumulator::serializeNodes):
1590 (WebCore::ancestorToRetainStructureAndAppearance):
1593 2011-09-16 Max Perepelitsyn <pph34r@gmail.com>
1595 Set but not used variables cleanup (gcc 4.6)
1596 https://bugs.webkit.org/show_bug.cgi?id=68157
1598 Reviewed by Darin Adler.
1600 * platform/audio/ReverbConvolverStage.cpp:
1601 (WebCore::ReverbConvolverStage::process):
1602 * rendering/RenderMediaControlsChromium.cpp:
1603 (WebCore::paintMediaButton):
1605 2011-09-16 Geoffrey Garen <ggaren@apple.com>
1607 Removed undetectable style.filter.
1609 Reviewed by Sam Weinig.
1611 This feature was added in http://trac.webkit.org/changeset/15557 to
1612 support housingmaps.com. But housingmaps.com no longer needs this hack,
1613 we don't know of other websites that need it, and we don't know of
1614 any other browsers that have implemented this feature.
1616 * ForwardingHeaders/runtime/StringObjectThatMasqueradesAsUndefined.h: Removed.
1618 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
1619 (WebCore::JSCSSStyleDeclaration::nameGetter):
1621 2011-09-16 Adam Barth <abarth@webkit.org>
1623 Update JSC results to account for intrinsics change.
1625 * bindings/scripts/test/JS/JSTestInterface.cpp:
1626 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
1627 * bindings/scripts/test/JS/JSTestObj.cpp:
1628 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
1630 2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
1632 Unreviewed, rolling out r95312.
1633 http://trac.webkit.org/changeset/95312
1634 https://bugs.webkit.org/show_bug.cgi?id=68277
1636 It's innocent, innocent I tell you! (Requested by jamesr_ on
1639 * platform/graphics/chromium/ContentLayerChromium.cpp:
1640 (WebCore::ContentLayerChromium::createTextureUpdater):
1641 * platform/graphics/chromium/LayerRendererChromium.cpp:
1642 (WebCore::LayerRendererChromium::LayerRendererChromium):
1643 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1644 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
1645 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1646 (WebCore::CCThreadProxy::context):
1647 (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
1648 (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
1649 (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
1651 2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
1653 Unreviewed, rolling out r95309.
1654 http://trac.webkit.org/changeset/95309
1655 https://bugs.webkit.org/show_bug.cgi?id=68271
1657 Broke many chromium gpu tests. (Requested by dave_levin on
1660 * platform/graphics/chromium/ContentLayerChromium.cpp:
1661 (WebCore::ContentLayerChromium::createTextureUpdater):
1662 * platform/graphics/chromium/LayerRendererChromium.cpp:
1663 (WebCore::LayerRendererChromium::LayerRendererChromium):
1664 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1665 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
1666 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1667 (WebCore::CCThreadProxy::context):
1668 (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
1669 (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
1670 (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
1672 2011-09-16 Filip Pizlo <fpizlo@apple.com>
1674 DFG JIT should inline Math.abs
1675 https://bugs.webkit.org/show_bug.cgi?id=68227
1677 Reviewed by Oliver Hunt.
1679 Added JavaScriptCore/dfg to include path path. Changed the bindings
1680 scripts to handle the presence of intrinsics.
1683 * bindings/scripts/CodeGeneratorJS.pm:
1684 (GenerateHashTable):
1686 2011-09-16 Iain Merrick <husky@google.com>
1688 [chromium] Fix CCLayerTreeHostTest
1689 https://bugs.webkit.org/show_bug.cgi?id=67418
1691 This is a minimal set of changes to get CCLayerTreeHostTest
1692 compiling, running and passing with USE_THREADED_COMPOSITING
1695 Reviewed by James Robinson.
1697 * platform/graphics/chromium/ContentLayerChromium.cpp:
1698 (WebCore::ContentLayerChromium::createTextureUpdater):
1699 * platform/graphics/chromium/LayerRendererChromium.cpp:
1700 (WebCore::LayerRendererChromium::LayerRendererChromium):
1701 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
1702 (WebCore::CCLayerTreeHost::createLayerTreeHostImpl):
1703 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1704 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
1705 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1706 (WebCore::CCThreadProxy::context):
1707 (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
1708 (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
1709 (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
1711 2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
1713 Unreviewed, rolling out r95227.
1714 http://trac.webkit.org/changeset/95227
1715 https://bugs.webkit.org/show_bug.cgi?id=68262
1717 Broke a bunch of SVG tests (Requested by andersca on #webkit).
1719 * platform/ScrollView.cpp:
1720 (WebCore::ScrollView::contentsSize):
1721 (WebCore::ScrollView::wheelEvent):
1722 * platform/ScrollView.h:
1723 * platform/mac/ScrollViewMac.mm:
1724 (WebCore::ScrollView::platformContentsSize):
1725 * platform/wx/ScrollViewWx.cpp:
1726 (WebCore::ScrollView::platformContentsSize):
1728 2011-09-16 James Simonsen <simonjam@chromium.org>
1730 Fix HTML5 parser's adoption agency algorithm to reparent correctly
1731 https://bugs.webkit.org/show_bug.cgi?id=68147
1733 Reviewed by Eric Seidel.
1735 * html/parser/HTMLTreeBuilder.cpp:
1736 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
1738 2011-09-16 Adam Barth <abarth@webkit.org>
1740 CodeGeneratorGObject should use C++ style comments for ENABLE guards
1741 https://bugs.webkit.org/show_bug.cgi?id=68256
1743 Reviewed by Darin Adler.
1745 This patch should have not behavioral effect. It just cleans up the
1746 GObject code generator to use C++-style comments for ENABLE guards and
1747 to use the usual comment style for license blocks.
1749 * bindings/scripts/CodeGeneratorGObject.pm:
1750 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
1751 * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
1752 * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
1753 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
1754 * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
1755 * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
1756 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
1757 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
1758 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
1759 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
1760 (webkit_dom_test_obj_conditional_method1):
1761 (webkit_dom_test_obj_conditional_method2):
1762 (webkit_dom_test_obj_conditional_method3):
1763 (webkit_dom_test_obj_get_conditional_attr1):
1764 (webkit_dom_test_obj_set_conditional_attr1):
1765 (webkit_dom_test_obj_get_conditional_attr2):
1766 (webkit_dom_test_obj_set_conditional_attr2):
1767 (webkit_dom_test_obj_get_conditional_attr3):
1768 (webkit_dom_test_obj_set_conditional_attr3):
1769 (webkit_dom_test_obj_set_property):
1770 (webkit_dom_test_obj_get_property):
1771 (webkit_dom_test_obj_class_init):
1772 * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
1773 * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
1774 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
1775 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
1776 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
1778 2011-09-16 Csaba Osztrogonác <ossy@webkit.org>
1780 [Qt] REGRESSION(r95091) It made many tests flakey
1781 https://bugs.webkit.org/show_bug.cgi?id=68232
1783 Unreviewed rolling out r95091 and followup patches.
1785 * English.lproj/localizedStrings.js:
1786 * bindings/v8/V8Proxy.cpp:
1787 (WebCore::V8Proxy::callFunction):
1788 * bindings/v8/V8Proxy.h:
1789 * bindings/v8/custom/V8CustomVoidCallback.cpp:
1790 (WebCore::invokeCallback):
1791 * dom/ScriptedAnimationController.cpp:
1792 (WebCore::ScriptedAnimationController::registerCallback):
1793 (WebCore::ScriptedAnimationController::cancelCallback):
1794 (WebCore::ScriptedAnimationController::serviceScriptedAnimations):
1795 * inspector/InspectorInstrumentation.cpp:
1796 * inspector/InspectorInstrumentation.h:
1797 (WebCore::InspectorInstrumentation::willCallFunction):
1798 * inspector/InspectorTimelineAgent.cpp:
1799 * inspector/InspectorTimelineAgent.h:
1800 * inspector/TimelineRecordFactory.cpp:
1801 * inspector/TimelineRecordFactory.h:
1802 * inspector/front-end/TimelineAgent.js:
1803 * inspector/front-end/TimelinePanel.js:
1804 (WebInspector.TimelinePanel):
1805 (WebInspector.TimelinePanel.prototype.get _recordStyles):
1806 (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
1807 (WebInspector.TimelinePanel.prototype._clearPanel):
1808 (WebInspector.TimelinePanel.FormattedRecord):
1809 (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
1810 (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
1812 2011-09-16 Abhishek Arya <inferno@chromium.org>
1814 cachedFont not getting updated for inline SVG text.
1815 https://bugs.webkit.org/show_bug.cgi?id=68060
1817 Reviewed by Nikolas Zimmermann.
1819 The cached scaledFont needs to be updated on every style set call. It
1820 is not similar to m_style which can get derived from parent's style and
1821 hence will get automatically updated on ancestor's style change. This is
1822 required, otherwise we will maintain stale font list in cached scaledFont
1823 when custom fonts are retired on Document::recalcStyle.
1825 Test: svg/text/text-style-recalc-crash.html
1827 * rendering/svg/RenderSVGInlineText.cpp:
1828 (WebCore::RenderSVGInlineText::styleDidChange):
1829 (WebCore::RenderSVGInlineText::setStyle):
1830 * rendering/svg/RenderSVGInlineText.h:
1832 2011-09-16 Antti Koivisto <antti@apple.com>
1834 REGRESSION (r95052): SelectorChecker identifier filter not working
1835 https://bugs.webkit.org/show_bug.cgi?id=68244
1837 Reviewed by Dan Bernstein.
1841 * css/SelectorChecker.cpp:
1842 (WebCore::collectDescendantSelectorIdentifierHashes):
1844 2011-09-16 Csaba Osztrogonác <ossy@webkit.org>
1846 Unreviewed typo fix after r95271.
1848 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
1850 2011-09-16 Andrey Kosyakov <caseq@chromium.org>
1852 Web Inspector: [Extensions API] support extensions for remote inspector front-end
1853 https://bugs.webkit.org/show_bug.cgi?id=67840
1855 Reviewed by Pavel Feldman.
1857 - Merge ExtensionCommon.js into ExtensionAPI.js
1858 - refactor building of extension API for better reuse
1859 - expose interface for extension registration
1862 * WebCore.vcproj/WebCore.vcproj:
1863 * inspector/front-end/ExtensionAPI.js:
1864 (defineCommonExtensionSymbols):
1865 (buildExtensionAPIInjectedScript):
1866 * inspector/front-end/ExtensionCommon.js:
1867 * inspector/front-end/ExtensionServer.js:
1868 (WebInspector.ExtensionServer.prototype._addExtensions):
1869 (WebInspector.ExtensionServer.prototype._addExtension):
1870 (WebInspector.ExtensionServer.prototype._buildExtensionAPIScript):
1871 (WebInspector.ExtensionServer.prototype._onWindowMessage):
1872 (WebInspector.ExtensionServer.prototype._registerExtension):
1873 (WebInspector.ExtensionServer.prototype._expandResourcePath):
1874 * inspector/front-end/WebKit.qrc:
1875 * inspector/front-end/inspector.html:
1877 2011-09-16 Ilya Tikhonovsky <loislo@chromium.org>
1879 Web Inspector: change WebInspector.currentPanel getter/setter to functions.
1880 https://bugs.webkit.org/show_bug.cgi?id=68242
1882 This is necessary for the panel switching performance tests.
1884 Reviewed by Pavel Feldman.
1886 * inspector/front-end/Drawer.js:
1887 (WebInspector.Drawer.prototype.show.animationFinished):
1888 (WebInspector.Drawer.prototype.show):
1889 (WebInspector.Drawer.prototype.hide):
1890 (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
1891 (WebInspector.Drawer.prototype._animateDrawerHeight):
1892 (WebInspector.Drawer.prototype._statusBarDragging):
1893 * inspector/front-end/ElementsPanel.js:
1894 (WebInspector.ElementsPanel.prototype.switchToAndFocus):
1895 * inspector/front-end/ResourcesPanel.js:
1896 (WebInspector.ResourcesPanel.prototype.showAnchorLocation):
1897 * inspector/front-end/ScriptsPanel.js:
1898 * inspector/front-end/SearchController.js:
1899 (WebInspector.SearchController.prototype.updateSearchMatchesCount):
1900 (WebInspector.SearchController.prototype.updateCurrentMatchIndex):
1901 (WebInspector.SearchController.prototype.updateSearchLabel):
1902 (WebInspector.SearchController.prototype.handleShortcut):
1903 (WebInspector.SearchController.prototype._performSearch):
1904 * inspector/front-end/Toolbar.js:
1905 (WebInspector.Toolbar.createPanelToolbarItem.onToolbarItemClicked):
1906 (WebInspector.Toolbar.createPanelToolbarItem):
1907 * inspector/front-end/inspector.js:
1908 (WebInspector.currentPanel):
1909 (WebInspector._updateFocusedNode):
1910 (WebInspector.windowResize):
1911 (WebInspector.documentKeyDown):
1912 (WebInspector.documentCanCopy):
1913 (WebInspector.documentCopy):
1914 (WebInspector.showPanel):
1915 (WebInspector.startUserInitiatedDebugging):
1916 (WebInspector.inspect):
1917 (WebInspector._showAnchorLocationInPanel):
1918 (WebInspector._toolbarItemClicked):
1919 (WebInspector.PanelHistory.prototype.goBack):
1920 (WebInspector.PanelHistory.prototype.goForward):
1922 2011-09-15 Pavel Feldman <pfeldman@google.com>
1924 Web Inspector: rename Console.clearConsoleMessages to Console.clearMessages, brush up console domain doc.
1925 https://bugs.webkit.org/show_bug.cgi?id=68165
1927 Reviewed by Yury Semikhatsky.
1929 * inspector/InjectedScriptHost.cpp:
1930 (WebCore::InjectedScriptHost::clearConsoleMessages):
1931 * inspector/Inspector.json:
1932 * inspector/InspectorConsoleAgent.cpp:
1933 (WebCore::InspectorConsoleAgent::clearMessages):
1934 * inspector/InspectorConsoleAgent.h:
1935 * inspector/front-end/ConsoleModel.js:
1936 (WebInspector.ConsoleModel.prototype.requestClearMessages):
1938 2011-09-16 Alejandro G. Castro <alex@igalia.com>
1940 Fix GTK build after r95245.
1942 * GNUmakefile.list.am:
1944 2011-09-16 Leo Yang <leo.yang@torchmobile.com.cn>
1946 [Qt] Crash when dragging google maps.
1947 https://bugs.webkit.org/show_bug.cgi?id=68223
1949 The custom image for a cursor might not be ready when WebKit trying
1950 to use it to construct the cursor in Qt porting. This patch is using
1951 arrow image to substitute the unready custom image.
1953 Reviewed by Adam Barth.
1955 Test: fast/css/crash-on-custom-cursor-when-loading.html
1957 * platform/qt/CursorQt.cpp:
1958 (WebCore::createCustomCursor):
1959 (WebCore::Cursor::ensurePlatformCursor):
1961 2011-09-15 Adam Barth <abarth@webkit.org>
1963 Rename ENABLE(DATABASE) to ENABLE(SQL_DATABASE)
1964 https://bugs.webkit.org/show_bug.cgi?id=68205
1966 Reviewed by Eric Seidel.
1968 As discussed on webkit-dev.
1971 * Configurations/FeatureDefines.xcconfig:
1973 * GNUmakefile.list.am:
1975 * bindings/generic/RuntimeEnabledFeatures.cpp:
1976 * bindings/generic/RuntimeEnabledFeatures.h:
1977 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
1978 * bindings/js/JSDOMBinding.cpp:
1979 (WebCore::setDOMException):
1980 * bindings/js/JSExceptionBase.cpp:
1981 (WebCore::toExceptionBase):
1982 * bindings/js/JSInjectedScriptHostCustom.cpp:
1983 (WebCore::JSInjectedScriptHost::databaseId):
1984 * bindings/js/JSSQLResultSetRowListCustom.cpp:
1985 * bindings/js/JSSQLTransactionCustom.cpp:
1986 * bindings/js/JSSQLTransactionSyncCustom.cpp:
1987 * bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
1988 * bindings/scripts/test/CPP/WebDOMTestCallback.h:
1989 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
1990 * bindings/scripts/test/JS/JSTestCallback.cpp:
1991 * bindings/scripts/test/JS/JSTestCallback.h:
1992 * bindings/scripts/test/ObjC/DOMTestCallback.mm:
1993 * bindings/scripts/test/TestCallback.idl:
1994 * bindings/scripts/test/V8/V8TestCallback.cpp:
1995 * bindings/scripts/test/V8/V8TestCallback.h:
1996 * bindings/v8/V8Proxy.cpp:
1997 (WebCore::V8Proxy::setDOMException):
1998 * bindings/v8/V8Proxy.h:
1999 * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
2000 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2001 (WebCore::V8InjectedScriptHost::databaseIdCallback):
2002 * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
2003 * bindings/v8/custom/V8SQLTransactionCustom.cpp:
2004 * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
2007 * dom/ExceptionCode.cpp:
2008 (WebCore::getExceptionCodeDescription):
2009 * dom/ExceptionCode.h:
2010 * dom/ScriptExecutionContext.cpp:
2011 (WebCore::ScriptExecutionContext::ScriptExecutionContext):
2012 (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
2013 * dom/ScriptExecutionContext.h:
2015 * history/PageCache.cpp:
2016 (WebCore::logCanCacheFrameDecision):
2017 (WebCore::PageCache::canCachePageContainingThisFrame):
2018 * inspector/InjectedScriptHost.cpp:
2019 (WebCore::InjectedScriptHost::InjectedScriptHost):
2020 (WebCore::InjectedScriptHost::disconnect):
2021 * inspector/InjectedScriptHost.h:
2022 (WebCore::InjectedScriptHost::init):
2023 * inspector/InspectorController.cpp:
2024 (WebCore::InspectorController::InspectorController):
2025 (WebCore::InspectorController::connectFrontend):
2026 (WebCore::InspectorController::disconnectFrontend):
2027 (WebCore::InspectorController::restoreInspectorStateFromCookie):
2028 * inspector/InspectorController.h:
2029 * inspector/InspectorDatabaseAgent.cpp:
2030 * inspector/InspectorDatabaseInstrumentation.h:
2031 * inspector/InspectorDatabaseResource.cpp:
2032 * inspector/InspectorDatabaseResource.h:
2033 * inspector/InspectorInstrumentation.cpp:
2034 (WebCore::InspectorInstrumentation::didCommitLoadImpl):
2035 * inspector/InspectorInstrumentation.h:
2036 * inspector/InstrumentingAgents.h:
2037 (WebCore::InstrumentingAgents::InstrumentingAgents):
2038 * inspector/WorkerInspectorController.cpp:
2039 (WebCore::WorkerInspectorController::WorkerInspectorController):
2040 (WebCore::WorkerInspectorController::connectFrontend):
2041 * loader/EmptyClients.h:
2042 * loader/FrameLoader.cpp:
2043 (WebCore::FrameLoader::stopLoading):
2044 * page/ChromeClient.h:
2045 * page/DOMWindow.cpp:
2047 * page/DOMWindow.idl:
2048 * platform/sql/SQLiteAuthorizer.cpp:
2049 * platform/sql/SQLiteDatabase.cpp:
2050 * platform/sql/SQLiteFileSystem.cpp:
2051 * platform/sql/SQLiteStatement.cpp:
2052 * platform/sql/SQLiteTransaction.cpp:
2053 * storage/AbstractDatabase.cpp:
2054 * storage/AbstractDatabase.h:
2055 * storage/ChangeVersionWrapper.cpp:
2056 * storage/ChangeVersionWrapper.h:
2057 * storage/Database.cpp:
2058 * storage/Database.h:
2059 * storage/Database.idl:
2060 * storage/DatabaseAuthorizer.cpp:
2061 * storage/DatabaseCallback.h:
2062 * storage/DatabaseCallback.idl:
2063 * storage/DatabaseDetails.h:
2064 * storage/DatabaseSync.cpp:
2065 * storage/DatabaseSync.h:
2066 * storage/DatabaseSync.idl:
2067 * storage/DatabaseTask.cpp:
2068 * storage/DatabaseTask.h:
2069 * storage/DatabaseThread.cpp:
2070 * storage/DatabaseThread.h:
2071 * storage/DatabaseTracker.cpp:
2072 * storage/DatabaseTracker.h:
2073 * storage/DatabaseTrackerClient.h:
2074 * storage/OriginQuotaManager.cpp:
2075 * storage/OriginQuotaManager.h:
2076 * storage/OriginUsageRecord.cpp:
2077 * storage/OriginUsageRecord.h:
2078 * storage/SQLCallbackWrapper.h:
2079 * storage/SQLError.h:
2080 * storage/SQLError.idl:
2081 * storage/SQLException.h:
2082 * storage/SQLException.idl:
2083 * storage/SQLResultSet.cpp:
2084 * storage/SQLResultSet.h:
2085 * storage/SQLResultSet.idl:
2086 * storage/SQLResultSetRowList.cpp:
2087 * storage/SQLResultSetRowList.h:
2088 * storage/SQLResultSetRowList.idl:
2089 * storage/SQLStatement.cpp:
2090 * storage/SQLStatement.h:
2091 * storage/SQLStatementCallback.h:
2092 * storage/SQLStatementCallback.idl:
2093 * storage/SQLStatementErrorCallback.h:
2094 * storage/SQLStatementErrorCallback.idl:
2095 * storage/SQLStatementSync.cpp:
2096 * storage/SQLStatementSync.h:
2097 * storage/SQLTransaction.cpp:
2098 * storage/SQLTransaction.h:
2099 * storage/SQLTransaction.idl:
2100 * storage/SQLTransactionCallback.h:
2101 * storage/SQLTransactionCallback.idl:
2102 * storage/SQLTransactionClient.cpp:
2103 * storage/SQLTransactionClient.h:
2104 * storage/SQLTransactionCoordinator.cpp:
2105 * storage/SQLTransactionCoordinator.h:
2106 * storage/SQLTransactionErrorCallback.h:
2107 * storage/SQLTransactionErrorCallback.idl:
2108 * storage/SQLTransactionSync.cpp:
2109 * storage/SQLTransactionSync.h:
2110 * storage/SQLTransactionSync.idl:
2111 * storage/SQLTransactionSyncCallback.h:
2112 * storage/SQLTransactionSyncCallback.idl:
2113 * storage/chromium/DatabaseObserver.h:
2114 * storage/chromium/DatabaseTrackerChromium.cpp:
2115 * storage/chromium/QuotaTracker.cpp:
2116 * storage/chromium/QuotaTracker.h:
2117 * storage/chromium/SQLTransactionClientChromium.cpp:
2118 * workers/WorkerContext.cpp:
2119 * workers/WorkerContext.h:
2120 * workers/WorkerContext.idl:
2121 * workers/WorkerThread.cpp:
2122 (WebCore::WorkerThreadShutdownStartTask::performTask):
2123 (WebCore::WorkerThread::stop):
2125 2011-09-15 Alexandru Chiculita <achicu@adobe.com>
2127 [CSSRegions] Regions should not slice line box rendering
2128 https://bugs.webkit.org/show_bug.cgi?id=66198
2130 Created a new LayoutState constructor for the RenderFlowThread. It will
2131 set m_isPaginated to true and force a pageHeight if 1. The actual pageHeight is
2132 not used, because pageLogicalHeightForOffset will actually redirect the call
2133 to RenderFlowThread.
2135 Removed some of the duplicate code that calculated the page logical offset.
2136 Added new methods like logicalPageOffset, pageLogicalHeightForOffset,
2137 pageRemainingLogicalHeightForOffset.
2139 There are still some issues related to incremental layout and different region widths.
2140 Those issues will be addressed in different patches.
2142 Reviewed by David Hyatt.
2144 Tests: fast/regions/text-region-breaks.html
2145 fast/regions/text-region-split-horizontal-bt.html
2146 fast/regions/text-region-split-vertical-rl.html
2147 fast/regions/text-region-split-vertical.html
2148 fast/regions/text-region-split.html
2150 * rendering/LayoutState.cpp:
2151 (WebCore::LayoutState::LayoutState):
2152 * rendering/LayoutState.h:
2153 (WebCore::LayoutState::LayoutState):
2154 (WebCore::LayoutState::isPaginated):
2155 * rendering/RenderBlock.cpp:
2156 (WebCore::RenderBlock::positionNewFloats):
2157 (WebCore::RenderBlock::adjustForRegionFittingIfNeeded):
2158 (WebCore::RenderBlock::nextPageLogicalTopExcludingBoundaryPoint):
2159 (WebCore::RenderBlock::nextPageLogicalTopIncludingBoundaryPoint):
2160 (WebCore::inNormalFlow):
2161 (WebCore::RenderBlock::applyBeforeBreak):
2162 (WebCore::RenderBlock::applyAfterBreak):
2163 (WebCore::RenderBlock::logicalPageOffset):
2164 (WebCore::RenderBlock::pageLogicalHeightForOffset):
2165 (WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
2166 (WebCore::RenderBlock::adjustForUnsplittableChild):
2167 (WebCore::RenderBlock::adjustLinePositionForPagination):
2168 * rendering/RenderBlock.h:
2169 * rendering/RenderFlowThread.cpp:
2170 (WebCore::RenderFlowThread::layout):
2171 (WebCore::RenderFlowThread::regionLogicalHeightForLine):
2172 (WebCore::RenderFlowThread::regionRemainingLogicalHeightForLine):
2173 * rendering/RenderFlowThread.h:
2174 * rendering/RenderView.cpp:
2175 (WebCore::RenderView::pushLayoutState):
2176 * rendering/RenderView.h:
2177 (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
2178 (WebCore::LayoutStateMaintainer::push):
2180 2011-09-15 Kentaro Hara <haraken@google.com>
2182 Implement a PopStateEvent constructor for JSC
2183 https://bugs.webkit.org/show_bug.cgi?id=67977
2185 Reviewed by Sam Weinig.
2187 Test: fast/events/constructors/pop-state-event-constructor.html
2189 * bindings/generic/EventConstructors.h: Added a definition for the PopStateEvent constructor.
2190 * bindings/js/JSEventConstructors.cpp: Added #includes for PopStateEvent.
2191 * dom/PopStateEvent.cpp:
2192 (WebCore::PopStateEventInit::PopStateEventInit):
2193 (WebCore::PopStateEvent::PopStateEvent):
2194 (WebCore::PopStateEvent::create):
2195 * dom/PopStateEvent.h: Added a definition for PopStateEventInit.
2196 * dom/PopStateEvent.idl: Makes PopStateEvent constructible.
2198 2011-09-15 Mihai Parparita <mihaip@chromium.org>
2200 Fragment navigations should interrupt a provisional load of a different document
2201 https://bugs.webkit.org/show_bug.cgi?id=64556
2203 Reviewed by Adam Barth.
2205 Tests: http/tests/history/back-with-fragment-change.php
2206 http/tests/navigation/navigation-interrupted-by-fragment.html
2208 * loader/FrameLoader.cpp: Stop provisional load if a fragment commits.
2209 * loader/HistoryController.cpp: Don't commit the wrong provisional item.
2211 2011-09-15 Adrienne Walker <enne@google.com>
2213 [chromium] Add temporary diagnostics for LayerTreeHost::commitTo crash
2214 https://bugs.webkit.org/show_bug.cgi?id=68204
2216 Reviewed by James Robinson.
2218 Add CRASH calls to determine which assumptions are being violated.
2220 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2221 (WebCore::CCLayerTreeHost::commitTo):
2223 2011-09-15 Mark Hahnenberg <mhahnenberg@apple.com>
2225 Unzip initialization lists and constructors in JSCell hierarchy (7/7)
2226 https://bugs.webkit.org/show_bug.cgi?id=68122
2228 Reviewed by Geoffrey Garen.
2232 Completed the seventh and final level of the refactoring to add finishCreation()
2233 methods to all classes within the JSCell hierarchy with non-trivial
2236 This consists of moving the finishCreation() method call into the create methods
2237 of the sixth level of the hierarchy as was done in previous patches.
2239 The special cases for JSAudioConstructor, JSOptionConstructor, and JSImageConstructor
2240 were also lumped in and given finishCreation() methods that are called in their
2241 create methods because we are at the end and want to avoid a trivial patch just
2242 for moving their finishCreation() methods from their constructor to their create method.
2244 * bindings/js/JSAudioConstructor.cpp:
2245 (WebCore::JSAudioConstructor::JSAudioConstructor):
2246 (WebCore::JSAudioConstructor::finishCreation):
2247 * bindings/js/JSAudioConstructor.h:
2248 (WebCore::JSAudioConstructor::create):
2249 * bindings/js/JSDOMBinding.h:
2250 (WebCore::DOMConstructorWithDocument::DOMConstructorWithDocument):
2251 * bindings/js/JSDOMWindowBase.cpp:
2252 (WebCore::JSDOMWindowBase::JSDOMWindowBase):
2253 * bindings/js/JSImageConstructor.cpp:
2254 (WebCore::JSImageConstructor::JSImageConstructor):
2255 (WebCore::JSImageConstructor::finishCreation):
2256 * bindings/js/JSImageConstructor.h:
2257 (WebCore::JSImageConstructor::create):
2258 * bindings/js/JSOptionConstructor.cpp:
2259 (WebCore::JSOptionConstructor::JSOptionConstructor):
2260 (WebCore::JSOptionConstructor::finishCreation):
2261 * bindings/js/JSOptionConstructor.h:
2262 (WebCore::JSOptionConstructor::create):
2263 * bindings/js/JSWorkerContextBase.cpp:
2264 (WebCore::JSWorkerContextBase::JSWorkerContextBase):
2266 The bindings generation script was also changed to move the finishCreation() call into the
2267 create methods for descendants of JSWorkerContextBase and JSDOMWindowBase because those base
2268 classes had it removed from their constructors.
2270 * bindings/scripts/CodeGeneratorJS.pm:
2272 * bridge/c/c_instance.cpp:
2273 (JSC::Bindings::CRuntimeMethod::create):
2274 (JSC::Bindings::CRuntimeMethod::CRuntimeMethod):
2275 * bridge/jni/jsc/JavaInstanceJSC.cpp:
2276 (JavaRuntimeMethod::create):
2277 (JavaRuntimeMethod::JavaRuntimeMethod):
2278 * bridge/objc/objc_instance.mm:
2279 (ObjCRuntimeMethod::create):
2280 (ObjCRuntimeMethod::ObjCRuntimeMethod):
2281 * bridge/qt/qt_runtime.cpp:
2282 (JSC::Bindings::QtRuntimeMetaMethod::QtRuntimeMetaMethod):
2283 (JSC::Bindings::QtRuntimeConnectionMethod::QtRuntimeConnectionMethod):
2284 * bridge/qt/qt_runtime.h:
2285 (JSC::Bindings::QtRuntimeMetaMethod::create):
2286 (JSC::Bindings::QtRuntimeConnectionMethod::create):
2288 2011-09-15 Kentaro Hara <haraken@google.com>
2290 A single line must not be split into two pages.
2291 https://bugs.webkit.org/show_bug.cgi?id=65005
2293 Reviewed by David Hyatt.
2295 When the document width of a page is overflowed, the last line of the page can be
2296 split into the next page. This is the regression caused by r88737. r88737 tried to
2297 fix rounding errors in rendering calculations by expanding and shrinking a page
2298 using one common method, resizePageRectsKeepingRatio(), but overlooked the case where
2299 a document width gets overflowed.
2301 This patch fixes the problem by also using resizePageRectsKeepingRatio() for the case
2302 where the document width gets overflowed.
2304 Test: printing/single-line-must-not-be-split-into-two-pages.html
2306 * WebCore.exp.in: Updated the signature of forceLayoutForPagination().
2308 (WebCore::Frame::setPrinting): Added a new argument |originalPageSize|, which is an original page size before being expanded or shrunk.
2310 * page/FrameView.cpp:
2311 (WebCore::FrameView::forceLayoutForPagination): Uses resizePageRectsKeepingRatio() in the case where the document width gets overflowed.
2313 * page/PrintContext.cpp:
2314 (WebCore::PrintContext::begin): Passes an original page size to setPrinting().
2315 (WebCore::PrintContext::end): Ditto.
2317 2011-09-15 Sheriff Bot <webkit.review.bot@gmail.com>
2319 Unreviewed, rolling out r95243 and r95246.
2320 http://trac.webkit.org/changeset/95243
2321 http://trac.webkit.org/changeset/95246
2322 https://bugs.webkit.org/show_bug.cgi?id=68202
2324 Broke the Windows build (Requested by smfr on #webkit).
2326 * WebCore.vcproj/WebCore.vcproj:
2327 * platform/graphics/ca/win/LayerChangesFlusher.cpp:
2328 (WebCore::LayerChangesFlusher::hookCallback):
2329 * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
2330 (PlatformCAAnimation::copy):
2331 * platform/win/StructuredExceptionHandlerSupressor.h: Removed.
2333 2011-09-15 Simon Fraser <simon.fraser@apple.com>
2335 Attempt to fix Windows build after r95243.
2337 * WebCore.vcproj/WebCore.vcproj:
2339 2011-09-15 Simon Fraser <simon.fraser@apple.com>
2341 Make custom scrollbar theme for use in DRT, to reduce pixel differences between platforms
2342 https://bugs.webkit.org/show_bug.cgi?id=68134
2344 Reviewed by James Robinson.
2346 Add new scrollbar theme, called ScrollbarThemeMock, for use in layout
2347 tests. The mock scrollbar simply draws a light gray box in the track,
2348 with a dark gray box for the thumb.
2350 Add ScrollbarThemeMock files to the build on all platforms. It isn't hooked up yet.
2353 * CMakeListsEfl.txt:
2354 * CMakeListsWinCE.txt:
2355 * GNUmakefile.list.am:
2358 * WebCore.vcproj/WebCore.vcproj:
2359 * WebCore.xcodeproj/project.pbxproj:
2360 * platform/mac/ScrollbarThemeMac.mm:
2361 (WebCore::ScrollbarTheme::nativeTheme):
2362 * platform/mock/ScrollbarThemeMock.cpp: Added.
2363 (WebCore::ScrollbarThemeMock::trackRect):
2364 (WebCore::ScrollbarThemeMock::scrollbarThickness):
2365 (WebCore::ScrollbarThemeMock::paintTrackBackground):
2366 (WebCore::ScrollbarThemeMock::paintThumb):
2367 * platform/mock/ScrollbarThemeMock.h: Added.
2368 (WebCore::ScrollbarThemeMock::hasButtons):
2369 (WebCore::ScrollbarThemeMock::hasThumb):
2370 (WebCore::ScrollbarThemeMock::backButtonRect):
2371 (WebCore::ScrollbarThemeMock::forwardButtonRect):
2373 2011-09-15 Beth Dakin <bdakin@apple.com>
2375 https://bugs.webkit.org/show_bug.cgi?id=67884
2376 Delete button icon does not properly update when the device resolution changes
2379 <rdar://problem/10104632>
2381 Reviewed by Darin Adler.
2383 In DeleteButtonController::deviceScaleFactorChanged(), if the delete button is
2384 currently showing, hide it and re-show it, forcing it to re-create the deletion
2386 * editing/DeleteButtonController.cpp:
2387 (WebCore::DeleteButtonController::deviceScaleFactorChanged):
2388 * editing/DeleteButtonController.h:
2389 * editing/Editor.cpp:
2390 (WebCore::Editor::deviceScaleFactorChanged):
2393 Iterate through all of the frames and propagate the deviceScaleFactorChange()
2396 (WebCore::Page::setDeviceScaleFactor):
2398 2011-09-15 Chris Marrin <cmarrin@apple.com>
2400 Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction
2401 https://bugs.webkit.org/show_bug.cgi?id=67510
2403 Reviewed by Adam Roben.
2405 Another fix to take care of one last crash when running pause-crash.html.
2406 CACF can't deal with null valueFunctions, so avoid setting it when it doesn't
2409 This also adds logic to the Windows Hook in LayerChangesFlusher to prevent it
2410 from catching the null pointer exception generated by the pause-crash.html test
2411 before this bug was fixed. Windows was ignoring the exception, so the testcase
2412 would appear to succeed, even though it should have crashed.
2414 * WebCore.vcproj/WebCore.vcproj:
2415 * platform/graphics/ca/win/LayerChangesFlusher.cpp:
2416 (WebCore::LayerChangesFlusher::hookCallback):
2417 * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
2418 (PlatformCAAnimation::copy):
2419 * platform\win\StructuredExceptionHandlerSupressor.h: New file to encapsulate the exception handling supression.
2421 2011-09-15 David Hyatt <hyatt@apple.com>
2423 https://bugs.webkit.org/show_bug.cgi?id=27579
2425 Make sure that the border shorthand also resets border-image.
2427 Reviewed by Beth Dakin.
2429 Added fast/borders/border-image-reset-by-border-shorthand.html.
2431 * css/CSSParser.cpp:
2432 (WebCore::CSSParser::parseValue):
2434 2011-09-15 David Hyatt <hyatt@apple.com>
2436 https://bugs.webkit.org/show_bug.cgi?id=50072
2438 Make overflow clipping to border-radius work across layers. This patch makes painting
2439 work but does not attempt to fix hit testing. It also doesn't work when a composited
2440 layer is clipped by a non-composited ancestor.
2442 Add a new ClipRect class (used by ClipRects and RenderLayer) that is basically just tracking
2443 a rect and a border radius taint. At the time we set a clip, if the rectangle is listed
2444 as also being clipped by a radius, then we walk up the layer tree and push those inner border
2445 rounded rect clips for any overflow areas in the containing block chain.
2447 Reviewed by Beth Dakin.
2449 Added new tests in fast/clip.
2451 * rendering/RenderBox.cpp:
2452 (WebCore::RenderBox::pushContentsClip):
2453 * rendering/RenderLayer.cpp:
2454 (WebCore::inContainingBlockChain):
2455 (WebCore::RenderLayer::clipToRect):
2456 (WebCore::RenderLayer::restoreClip):
2457 (WebCore::RenderLayer::paintLayer):
2458 (WebCore::RenderLayer::hitTestLayer):
2459 (WebCore::RenderLayer::calculateClipRects):
2460 (WebCore::RenderLayer::backgroundClipRect):
2461 (WebCore::RenderLayer::calculateRects):
2462 (WebCore::RenderLayer::childrenClipRect):
2463 (WebCore::RenderLayer::selfClipRect):
2464 * rendering/RenderLayer.h:
2465 (WebCore::ClipRect::ClipRect):
2466 (WebCore::ClipRect::rect):
2467 (WebCore::ClipRect::setRect):
2468 (WebCore::ClipRect::hasRadius):
2469 (WebCore::ClipRect::setHasRadius):
2470 (WebCore::ClipRect::operator==):
2471 (WebCore::ClipRect::intersect):
2472 (WebCore::ClipRect::move):
2473 (WebCore::ClipRect::isEmpty):
2474 (WebCore::ClipRect::intersects):
2475 (WebCore::intersection):
2476 (WebCore::ClipRects::overflowClipRect):
2477 (WebCore::ClipRects::setOverflowClipRect):
2478 (WebCore::ClipRects::fixedClipRect):
2479 (WebCore::ClipRects::setFixedClipRect):
2480 (WebCore::ClipRects::posClipRect):
2481 (WebCore::ClipRects::setPosClipRect):
2482 * rendering/RenderLayerBacking.cpp:
2483 (WebCore::RenderLayerBacking::updateCompositedBounds):
2484 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2485 (WebCore::RenderLayerBacking::paintIntoLayer):
2486 * rendering/RenderLayerCompositor.cpp:
2487 (WebCore::RenderLayerCompositor::addToOverlapMap):
2488 (WebCore::RenderLayerCompositor::clippedByAncestor):
2489 * rendering/RenderTreeAsText.cpp:
2490 (WebCore::writeLayers):
2492 2011-09-15 Julien Chaffraix <jchaffraix@webkit.org>
2494 Crash in RenderBox::paintMaskImages due to a mask without an associated image
2495 https://bugs.webkit.org/show_bug.cgi?id=50151
2497 Reviewed by Simon Fraser.
2499 Test: fast/css/empty-webkit-mask-crash.html
2501 The crash stems from the fact that FillLayer::hasImage would walk over the linked list
2502 of FillLayers and return true if one had an image. This means that hasImage() is true
2503 does not mean that image() is non-NULL on all FillLayers.
2505 * rendering/RenderBox.cpp:
2506 (WebCore::RenderBox::paintMaskImages): Simplify the logic by doing the hasImage() check up-front
2507 and properly check image() for each FillLayers. This has the nice benefit of changing the complexity
2508 from O(n^2) to O(n), which was what the code expected anyway.
2510 2011-09-15 Eric Seidel <eric@webkit.org>
2512 Remove ENABLE(SVG_AS_IMAGE) since all major ports have it on by default
2513 https://bugs.webkit.org/show_bug.cgi?id=68182
2515 Reviewed by Adam Barth.
2517 * Configurations/FeatureDefines.xcconfig:
2518 * DerivedSources.make:
2521 * loader/cache/CachedImage.cpp:
2522 (WebCore::CachedImage::createImage):
2524 2011-09-15 Andy Estes <aestes@apple.com>
2526 Having an empty listener to beforeload events changes the behavior of other scripts
2527 https://bugs.webkit.org/show_bug.cgi?id=45586
2529 Reviewed by Darin Adler.
2531 Test: fast/dom/beforeload/cached-image-before-load.html
2533 When loading a cached image after a beforeload handler has been
2534 installed on the document, ImageLoader would dispatch both the
2535 beforeload and load events asynchronously in such a way that caused
2536 load to fire first. Since a side effect of firing the beforeload event
2537 is to wire up the CachedImage to its associated RenderImage object,
2538 this work was not done by the time load fired, and scripts that queried
2539 renderer-dependent attributes of the image in an onload handler would
2540 get bogus values in return.
2542 Fix this by ensuring load fires after beforeload in the cached image case.
2544 * loader/ImageLoader.cpp:
2545 (WebCore::ImageLoader::updateFromElement): Call setClient() after
2546 dispatching beforeload, since setClient() will dispatch the load event
2547 if the image is cached.
2549 2011-09-15 Anders Carlsson <andersca@apple.com>
2551 Remove ScrollView::platformContentsSize
2552 https://bugs.webkit.org/show_bug.cgi?id=68188
2554 Reviewed by Darin Adler.
2556 Since ScrollView keeps track of the contents size in ScrollView::m_contentsSize, we never
2557 have to ask the underlying platform scroll view for contents size since it should always just
2558 be equal to m_contentsSize.
2560 * platform/ScrollView.cpp:
2561 (WebCore::ScrollView::contentsSize):
2562 (WebCore::ScrollView::wheelEvent):
2563 * platform/ScrollView.h:
2564 * platform/mac/ScrollViewMac.mm:
2565 * platform/wx/ScrollViewWx.cpp:
2567 2011-09-15 Jon Lee <jonlee@apple.com>
2569 Submitting a form with target=_blank works only once
2570 https://bugs.webkit.org/show_bug.cgi?id=28633
2571 <rdar://problem/7357787>
2573 Reviewed by Andy Estes.
2575 Test: fast/forms/submit-to-blank-multiple-times.html
2577 The call to reset the multiple form submission bool is pushed down from the mouseDown handler to
2578 handleMousePressEvent(), to include WK2 coverage, similar to keyEvent.
2580 * page/EventHandler.cpp:
2581 (WebCore::EventHandler::handleMousePressEvent):
2582 (WebCore::EventHandler::keyEvent): clarified old FIXME comment. Both key events and mouse events
2583 may submit a form multiple times, but the call to reset the handler should probably be in another
2585 * page/mac/EventHandlerMac.mm:
2586 (WebCore::EventHandler::mouseDown):
2588 2011-09-15 Peter Rybin <peter.rybin@gmail.com>
2590 XMLDocumentParserQt.cpp incorrectly converts 0-based number into 1-based number
2591 https://bugs.webkit.org/show_bug.cgi?id=63540
2593 ZeroBasedNumber/OneBasedNumber are used in more places, inconsistency
2594 in xml parser is fixed.
2596 Reviewed by Adam Barth.
2598 * bindings/js/ScriptController.cpp:
2599 (WebCore::ScriptController::eventHandlerLineNumber):
2600 * dom/ScriptableDocumentParser.h:
2601 * dom/StyleElement.cpp:
2602 (WebCore::StyleElement::StyleElement):
2603 * dom/ViewportArguments.cpp:
2604 (WebCore::parserLineNumber):
2605 * html/parser/HTMLDocumentParser.cpp:
2606 (WebCore::HTMLDocumentParser::lineNumber):
2607 * html/parser/HTMLDocumentParser.h:
2608 * inspector/InspectorResourceAgent.cpp:
2609 (WebCore::InspectorResourceAgent::buildInitiatorObject):
2610 * svg/SVGDocumentExtensions.cpp:
2611 (WebCore::parserLineNumber):
2612 * xml/parser/NewXMLDocumentParser.cpp:
2613 (WebCore::NewXMLDocumentParser::lineNumber):
2614 * xml/parser/NewXMLDocumentParser.h:
2615 * xml/parser/XMLDocumentParser.cpp:
2616 (WebCore::XMLDocumentParser::pushCurrentNode):
2617 * xml/parser/XMLDocumentParser.h:
2618 * xml/parser/XMLDocumentParserLibxml2.cpp:
2619 (WebCore::PendingCallbacks::appendErrorCallback):
2620 (WebCore::XMLDocumentParser::doWrite):
2621 (WebCore::XMLDocumentParser::startElementNs):
2622 (WebCore::XMLDocumentParser::error):
2623 (WebCore::XMLDocumentParser::lineNumber):
2624 (WebCore::XMLDocumentParser::columnNumber):
2625 (WebCore::XMLDocumentParser::textPosition):
2626 * xml/parser/XMLDocumentParserQt.cpp:
2627 (WebCore::XMLDocumentParser::doWrite):
2628 (WebCore::XMLDocumentParser::doEnd):
2629 (WebCore::XMLDocumentParser::lineNumber):
2630 (WebCore::XMLDocumentParser::columnNumber):
2631 (WebCore::XMLDocumentParser::textPosition):
2632 (WebCore::XMLDocumentParser::parse):
2633 (WebCore::XMLDocumentParser::parseStartElement):
2635 2011-09-15 Peter Kasting <pkasting@google.com>
2637 Fix WebCore.gypi after r95130.
2639 Unreviewed, build fix.
2643 2011-09-15 Eric Seidel <eric@webkit.org>
2645 Remove ENABLE_SVG_ANIMATION as all major ports have it on by default
2646 https://bugs.webkit.org/show_bug.cgi?id=68022
2648 Reviewed by Ryosuke Niwa.
2650 * Configurations/FeatureDefines.xcconfig:
2651 * DerivedSources.make:
2654 * page/DOMWindow.idl:
2657 2011-09-15 Matthew Delaney <mdelaney@apple.com>
2659 REGRESSION (Safari 5.1-r95043): Incorrect box-shadow offset
2660 https://bugs.webkit.org/show_bug.cgi?id=68041
2662 Reviewed by Dan Bernstein.
2664 Test: fast/box-shadow/no-blur-multiple-offsets.html
2666 * platform/graphics/cg/GraphicsContextCG.cpp:
2667 (WebCore::GraphicsContext::setPlatformShadow): Add hack back in for Lion if
2668 context is not accelerated.
2670 2011-09-15 James Simonsen <simonjam@chromium.org>
2672 Ref protect HTMLObjectElement and HTMLEmbedElement while requesting plugins
2673 https://bugs.webkit.org/show_bug.cgi?id=68014
2675 Reviewed by Adam Barth.
2677 Test: plugins/destroy-during-npp-new.html under valgrind
2678 plugins/destroy-during-npp-new-object-with-fallback-content.html under valgrind
2680 * html/HTMLEmbedElement.cpp:
2681 (WebCore::HTMLEmbedElement::updateWidget):
2682 * html/HTMLObjectElement.cpp:
2683 (WebCore::HTMLObjectElement::updateWidget):
2685 2011-09-15 Sam Weinig <sam@webkit.org>
2687 Experiment with removing ability to call a collection (except document.all)
2688 https://bugs.webkit.org/show_bug.cgi?id=67579
2690 Reviewed by Anders Carlsson.
2692 At the request of the public-script-coord mailing list (specifically Brendan Eich, see
2693 http://lists.w3.org/Archives/Public/public-script-coord/2011JulSep/0360.html), this
2694 patch removes the ability to call a collection (either a NodeList or HTMLCollection,
2695 but not an HTMLAllCollection) as function, a syntax that we adopted to emulate IE.
2696 It is being landed to find out if there are any sites relying on this behavior of WebKit,
2697 or, if it is only used in IE only paths. If we find sites are breaking, it should be rolled
2698 out and we should inform the public-script-coord mailing list.
2700 * bindings/js/JSHTMLAllCollectionCustom.cpp:
2703 * bindings/js/JSHTMLCollectionCustom.cpp:
2704 * bindings/js/JSNodeListCustom.cpp:
2705 Remove custom call code.
2707 * bindings/scripts/CodeGeneratorV8.pm:
2708 Add support for V8CustomCall.
2711 * html/HTMLCollection.idl:
2714 2011-09-15 Andreas Kling <kling@webkit.org>
2716 CanvasRenderingContext2D::State copy ctor should use initializer list.
2717 https://bugs.webkit.org/show_bug.cgi?id=68152
2719 Reviewed by Darin Adler.
2721 * html/canvas/CanvasRenderingContext2D.cpp:
2722 (WebCore::CanvasRenderingContext2D::State::State):
2724 2011-09-15 Andreas Kling <kling@webkit.org>
2726 Don't bother calculating dirty rect for accelerated 2D canvases.
2727 https://bugs.webkit.org/show_bug.cgi?id=68158
2729 Reviewed by Kenneth Rohde Christiansen.
2731 For accelerated CanvasRenderingContext2D, didDraw() simply calls out
2732 to RenderLayer::contentChanged(). Move this to the top of didDraw()
2733 so we don't waste time calculating a precise dirty rect.
2735 * html/canvas/CanvasRenderingContext2D.cpp:
2736 (WebCore::CanvasRenderingContext2D::didDraw):
2738 2011-09-15 Brian Salomon <bsalomon@google.com>
2740 [Skia/Chrome] Cleanup unneeded code now that GrGLInterface is used to set GL ctx per GL call.
2741 https://bugs.webkit.org/show_bug.cgi?id=68096
2743 Reviewed by Stephen White.
2745 This change removes PlatformContextSkia::makeGrContextCurrent now that
2746 GrGLInterface is used to set the context on every Skia GL call.
2748 Tested by every canvas layout test.
2750 * platform/graphics/chromium/FontLinux.cpp:
2751 (WebCore::Font::drawGlyphs):
2752 * platform/graphics/skia/FontSkia.cpp:
2753 (WebCore::Font::drawGlyphs):
2754 * platform/graphics/skia/GraphicsContextSkia.cpp:
2755 (WebCore::GraphicsContext::clearRect):
2756 (WebCore::GraphicsContext::clip):
2757 (WebCore::GraphicsContext::drawConvexPolygon):
2758 (WebCore::GraphicsContext::drawEllipse):
2759 (WebCore::GraphicsContext::drawFocusRing):
2760 (WebCore::GraphicsContext::drawLine):
2761 (WebCore::GraphicsContext::drawLineForTextChecking):
2762 (WebCore::GraphicsContext::drawLineForText):
2763 (WebCore::GraphicsContext::drawRect):
2764 (WebCore::GraphicsContext::fillPath):
2765 (WebCore::GraphicsContext::fillRect):
2766 (WebCore::GraphicsContext::fillRoundedRect):
2767 (WebCore::GraphicsContext::strokeArc):
2768 (WebCore::GraphicsContext::strokePath):
2769 (WebCore::GraphicsContext::strokeRect):
2770 * platform/graphics/skia/ImageBufferSkia.cpp:
2771 (WebCore::ImageBuffer::ImageBuffer):
2772 (WebCore::ImageBuffer::~ImageBuffer):
2773 (WebCore::ImageBuffer::copyImage):
2774 (WebCore::ImageBuffer::draw):
2775 (WebCore::ImageBuffer::drawPattern):
2776 (WebCore::ImageBuffer::getUnmultipliedImageData):
2777 (WebCore::ImageBuffer::getPremultipliedImageData):
2778 (WebCore::ImageBuffer::putUnmultipliedImageData):
2779 (WebCore::ImageBuffer::putPremultipliedImageData):
2780 (WebCore::ImageBuffer::toDataURL):
2781 * platform/graphics/skia/ImageSkia.cpp:
2782 (WebCore::BitmapImage::draw):
2783 (WebCore::BitmapImageSingleFrameSkia::draw):
2784 * platform/graphics/skia/PlatformContextSkia.cpp:
2785 (WebCore::PlatformContextSkia::clipPathAntiAliased):
2786 (WebCore::PlatformContextSkia::setGraphicsContext3D):
2787 * platform/graphics/skia/PlatformContextSkia.h:
2788 * platform/graphics/skia/SkiaFontWin.cpp:
2789 (WebCore::paintSkiaText):
2791 2011-09-15 Peter Beverloo <peter@chromium.org>
2793 [Chromium] Make sure that the ARM NEON files build with -marm
2794 https://bugs.webkit.org/show_bug.cgi?id=68088
2796 Simply adding the -marm cflag for OS=Android compiles results in it
2797 being overridden by an -mthumb cflag later in the project generating
2798 process. Therefore we should explicitly exclude -mthumb.
2800 Reviewed by Tony Gentilcore.
2802 * WebCore.gyp/WebCore.gyp:
2804 2011-09-15 Keishi Hattori <keishi@webkit.org>
2806 [chromium] Build fix: Remove use of GraphicsContext::setIsAcceleratedContext
2808 r95174 introduced GraphicsContext::setIsAcceleratedContext into Skia code and caused chromium builds to fail.
2810 * platform/graphics/skia/ImageBufferSkia.cpp:
2811 (WebCore::ImageBuffer::ImageBuffer):
2813 2011-09-15 Yuta Kitamura <yutak@chromium.org>
2815 ThreadableWebSocketChannelClientWrapper shouldn't have a String in it.
2816 https://bugs.webkit.org/show_bug.cgi?id=67908
2818 Reviewed by David Levin.
2820 Replace a String member variable in ThreadableWebSocketChannelClientWrapper with Vector<UChar>.
2822 ThreadableWebSocketChannelClientWrapper is derived from ThreadSafeRefCounted. It may be
2823 destroyed on different threads, which will affect String's refcounting. Therefore, classes
2824 derived from ThreadSafeRefCounted must not have a String member variable.
2826 No change in functionality, thus no new tests. WebSocket worker tests
2827 (tests under http/tests/websocket/tests/{hixie76,hybi}/workers/) should keep passing.
2829 * websockets/ThreadableWebSocketChannelClientWrapper.cpp:
2830 (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
2831 (WebCore::ThreadableWebSocketChannelClientWrapper::subprotocol):
2832 Create a String from Vector<UChar>. Note that String constructor taking an empty vector returns
2833 a null string, not an empty string. We want an empty string in that case, so I had to add
2834 special-case handling for an empty vector.
2835 (WebCore::ThreadableWebSocketChannelClientWrapper::setSubprotocol):
2836 Copy the content of the given String into Vector.
2837 * websockets/ThreadableWebSocketChannelClientWrapper.h:
2839 2011-09-14 Matthew Delaney <mdelaney@apple.com>
2841 Use isAcceleratedContext() on the GraphicsContext instead of flags in ImageBuffer
2842 https://bugs.webkit.org/show_bug.cgi?id=68137
2844 Reviewed by Simon Fraser.
2846 No new tests. No change in behavior.
2848 * html/canvas/CanvasRenderingContext2D.cpp:
2849 (WebCore::CanvasRenderingContext2D::isAccelerated): Have all just query the context directly.
2850 (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere): just use isAccelerated directly
2851 * platform/graphics/ImageBuffer.h:
2852 * platform/graphics/cg/ImageBufferCG.cpp:
2853 (WebCore::ImageBuffer::ImageBuffer): Set isAcceleratedContext on the GraphicsContext instead of carrying the
2854 bit around on the ImageBuffer itself.
2855 (WebCore::ImageBuffer::copyNativeImage): Update the check. Same for all below...
2856 (WebCore::ImageBuffer::drawPattern):
2857 (WebCore::ImageBuffer::getUnmultipliedImageData):
2858 (WebCore::ImageBuffer::getPremultipliedImageData):
2859 (WebCore::ImageBuffer::putUnmultipliedImageData):
2860 (WebCore::ImageBuffer::putPremultipliedImageData):
2861 * platform/graphics/skia/ImageBufferSkia.cpp: Set isAcceleratedContext on the GraphicsContext instead of carrying the
2862 bit around on the ImageBuffer itself.
2863 (WebCore::ImageBuffer::ImageBuffer): Remove m_acceleratesRendering flag and getter.
2865 2011-09-14 Jeffrey Pfau <jeffrey@endrift.com>
2867 libxml2 fragment parser loses prefix namespaces
2868 https://bugs.webkit.org/show_bug.cgi?id=66423
2870 This makes the loop over the elements outside of the context actually update the element it's processing.
2872 Reviewed by Eric Seidel.
2874 Test: fast/parser/innerhtml-with-prefixed-elements.xhtml
2876 * xml/parser/XMLDocumentParserLibxml2.cpp:
2877 (WebCore::XMLDocumentParser::XMLDocumentParser):
2879 2011-09-14 Nate Chapin <japhet@chromium.org>
2881 [V8] Null-check the v8::Context in
2882 V8DOMWindowShell:namedItemAdded() before using it.
2883 Also, add some logging to figure out how we're getting
2884 into this bad state.
2885 https://bugs.webkit.org/show_bug.cgi?id=68099
2887 Reviewed by Adam Barth.
2889 No new tests, no known repro.
2891 * bindings/v8/V8DOMWindowShell.cpp:
2892 (WebCore::V8DOMWindowShell::namedItemAdded):
2894 2011-09-14 Patrick Gansterer <paroga@webkit.org>
2896 Replace ENABLE_XHR_RESPONSE_BLOB preprocessor statements in IDL files with Conditional attribute
2897 https://bugs.webkit.org/show_bug.cgi?id=64960
2899 Reviewed by Ryosuke Niwa.
2901 * xml/XMLHttpRequest.idl:
2903 2011-09-14 Alexei Svitkine <asvitkine@chromium.org>
2905 Chromium: Add a layer for rubber-band overhang painting to the hardware path.
2906 https://bugs.webkit.org/show_bug.cgi?id=66969
2908 Also, add layout tests for rubber-band overhang drawing for compositing path.
2910 Reviewed by James Robinson.
2912 * page/FrameView.cpp:
2913 (WebCore::FrameView::layerForOverhangAreas):
2915 * platform/ScrollView.cpp:
2916 (WebCore::ScrollView::scrollContents):
2917 (WebCore::ScrollView::wheelEvent):
2918 * platform/ScrollView.h:
2919 * platform/ScrollableArea.h:
2920 (WebCore::ScrollableArea::layerForOverhangAreas):
2921 * rendering/RenderLayerCompositor.cpp:
2922 (WebCore::RenderLayerCompositor::frameViewDidChangeSize):
2923 (WebCore::RenderLayerCompositor::paintContents):
2924 (WebCore::RenderLayerCompositor::updateOverflowControlsLayers):
2925 (WebCore::RenderLayerCompositor::destroyRootLayer):
2926 * rendering/RenderLayerCompositor.h:
2927 (WebCore::RenderLayerCompositor::layerForOverhangAreas):
2929 2011-09-14 Antoine Labour <piman@chromium.org>
2931 Remove the dependency on GraphicsLayer from CCLayerTreeHost.
2932 Move root layer management into the NonCompositedContentHost.
2933 Have WebViewImpl create a NonCompositedContentHost explicitly.
2934 https://bugs.webkit.org/show_bug.cgi?id=67883
2936 Reviewed by James Robinson.
2938 Covered by compositing/ layout tests.
2940 * platform/graphics/chromium/NonCompositedContentHost.cpp:
2941 (WebCore::NonCompositedContentHost::setRootLayer):
2942 (WebCore::NonCompositedContentHost::setViewport):
2943 (WebCore::NonCompositedContentHost::setVisible):
2944 (WebCore::NonCompositedContentHost::clearRenderSurfacesRecursive):
2945 (WebCore::NonCompositedContentHost::invalidateRect):
2946 * platform/graphics/chromium/NonCompositedContentHost.h:
2947 (WebCore::NonCompositedContentHost::topLevelRootLayer):
2948 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2949 (WebCore::CCLayerTreeHost::create):
2950 (WebCore::CCLayerTreeHost::CCLayerTreeHost):
2951 (WebCore::CCLayerTreeHost::initialize):
2952 (WebCore::CCLayerTreeHost::commitTo):
2953 (WebCore::CCLayerTreeHost::didRecreateGraphicsContext):
2954 (WebCore::CCLayerTreeHost::setViewport):
2955 (WebCore::CCLayerTreeHost::setVisible):
2956 (WebCore::CCLayerTreeHost::updateLayers):
2957 (WebCore::CCLayerTreeHost::paintLayerContents):
2958 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2959 (WebCore::CCLayerTreeHost::rootLayer):
2961 2011-09-14 Henrik Grunell <grunell@google.com>
2963 MediaStream API: Change PeerConnection constructor name to webkitPeerConnection
2964 https://bugs.webkit.org/show_bug.cgi?id=67843
2966 Reviewed by Tony Gentilcore.
2968 Tests for the MediaStream API will be provided by the bug 56587, pending enough landed code.
2970 * bindings/generic/RuntimeEnabledFeatures.h:
2971 (WebCore::RuntimeEnabledFeatures::webkitPeerConnectionEnabled):
2972 * page/DOMWindow.idl:
2974 2011-09-14 John Bauman <jbauman@chromium.org>
2976 Make sure to GC decoded images that are only used with WebGL
2977 https://bugs.webkit.org/show_bug.cgi?id=67899
2979 Reviewed by James Robinson.
2981 Tell CachedImage that the WebGL image was drawn so WebGL-only
2982 content will have decoded images collected.
2984 * platform/graphics/GraphicsContext3D.cpp:
2985 (WebCore::GraphicsContext3D::extractImageData):
2987 2011-09-14 Antoine Labour <piman@chromium.org>
2989 Added a pure virtual class CCLayerDelegate which helps to isolate
2990 the chromium compositor from the rest of WebCore, and aids unit
2991 testing by being easily mockable. The compositor layers no longer
2992 directly see instances of GraphicsLayerChromium, instead they use
2994 https://bugs.webkit.org/show_bug.cgi?id=67750
2996 Reviewed by James Robinson.
2998 No new tests: changes already covered by existing compositing layout
3001 * platform/graphics/chromium/CanvasLayerChromium.cpp:
3002 (WebCore::CanvasLayerChromium::CanvasLayerChromium):
3003 * platform/graphics/chromium/CanvasLayerChromium.h:
3004 * platform/graphics/chromium/ContentLayerChromium.cpp:
3005 (WebCore::ContentLayerPainter::create):
3006 (WebCore::ContentLayerPainter::paint):
3007 (WebCore::ContentLayerPainter::ContentLayerPainter):
3008 (WebCore::ContentLayerChromium::create):
3009 (WebCore::ContentLayerChromium::ContentLayerChromium):
3010 (WebCore::ContentLayerChromium::drawsContent):
3011 * platform/graphics/chromium/ContentLayerChromium.h:
3012 * platform/graphics/chromium/GraphicsLayerChromium.cpp:
3013 (WebCore::GraphicsLayerChromium::getDrawsContent):
3014 (WebCore::GraphicsLayerChromium::getPreserves3D):
3015 (WebCore::GraphicsLayerChromium::paintingGoesToWindow):
3016 (WebCore::GraphicsLayerChromium::doPaintGraphicsLayerContents):
3017 (WebCore::GraphicsLayerChromium::notifySyncRequired):
3018 * platform/graphics/chromium/GraphicsLayerChromium.h:
3019 * platform/graphics/chromium/ImageLayerChromium.cpp:
3020 (WebCore::ImageLayerChromium::create):
3021 (WebCore::ImageLayerChromium::ImageLayerChromium):
3022 * platform/graphics/chromium/ImageLayerChromium.h:
3023 * platform/graphics/chromium/LayerChromium.cpp:
3024 (WebCore::LayerChromium::create):
3025 (WebCore::LayerChromium::LayerChromium):
3026 * platform/graphics/chromium/LayerChromium.h:
3027 (WebCore::CCLayerDelegate::~CCLayerDelegate):
3028 (WebCore::LayerChromium::preserves3D):
3029 (WebCore::LayerChromium::setOwner):
3030 * platform/graphics/chromium/PluginLayerChromium.cpp:
3031 (WebCore::PluginLayerChromium::create):
3032 (WebCore::PluginLayerChromium::PluginLayerChromium):
3033 * platform/graphics/chromium/PluginLayerChromium.h:
3034 * platform/graphics/chromium/TiledLayerChromium.cpp:
3035 (WebCore::TiledLayerChromium::TiledLayerChromium):
3036 * platform/graphics/chromium/TiledLayerChromium.h:
3037 * platform/graphics/chromium/VideoLayerChromium.cpp:
3038 (WebCore::VideoLayerChromium::create):
3039 (WebCore::VideoLayerChromium::VideoLayerChromium):
3040 (WebCore::VideoLayerChromium::updateCompositorResources):
3041 * platform/graphics/chromium/VideoLayerChromium.h:
3042 * platform/graphics/chromium/WebGLLayerChromium.cpp:
3043 (WebCore::WebGLLayerChromium::create):
3044 (WebCore::WebGLLayerChromium::WebGLLayerChromium):
3045 * platform/graphics/chromium/WebGLLayerChromium.h:
3047 2011-09-14 Anders Carlsson <andersca@apple.com>
3049 Try to fix GTK+ build.
3051 * GNUmakefile.list.am:
3053 2011-09-14 James Robinson <jamesr@chromium.org>
3055 [chromium] LayerRendererChromium shouldn't be RefCounted
3056 https://bugs.webkit.org/show_bug.cgi?id=68121
3058 Reviewed by Kenneth Russell.
3060 LayerRendererChromium is owned exclusively by CCLayerTreeHostImpl, so there's no reason to have it be
3061 refcounted. Making it an OwnPtr<> makes the lifecycle for these objects much cleaner and reduces the chance of
3062 introducing accidental reference cycles. This also removes the LayerRendererChromium pointers from CCLayerImpls
3063 since it only needed at draw time.
3065 Covered by compositing/ tests.
3067 * platform/graphics/chromium/LayerRendererChromium.cpp:
3068 (WebCore::LayerRendererChromium::create):
3069 (WebCore::LayerRendererChromium::drawLayers):
3070 (WebCore::LayerRendererChromium::copyOffscreenTextureToDisplay):
3071 (WebCore::LayerRendererChromium::useRenderSurface):
3072 (WebCore::LayerRendererChromium::drawLayer):
3073 * platform/graphics/chromium/LayerRendererChromium.h:
3074 * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
3075 (WebCore::CCCanvasLayerImpl::draw):
3076 * platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
3077 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
3078 (WebCore::CCLayerImpl::CCLayerImpl):
3079 (WebCore::CCLayerImpl::draw):
3080 (WebCore::CCLayerImpl::bindContentsTexture):
3081 (WebCore::CCLayerImpl::drawDebugBorder):
3082 * platform/graphics/chromium/cc/CCLayerImpl.h:
3083 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
3084 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
3085 (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
3086 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
3087 * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
3088 (WebCore::CCPluginLayerImpl::draw):
3089 * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
3090 * platform/graphics/chromium/cc/CCRenderSurface.cpp:
3091 (WebCore::CCRenderSurface::cleanupResources):
3092 (WebCore::CCRenderSurface::prepareContentsTexture):
3093 (WebCore::CCRenderSurface::draw):
3094 (WebCore::CCRenderSurface::drawLayer):
3095 (WebCore::CCRenderSurface::drawSurface):
3096 * platform/graphics/chromium/cc/CCRenderSurface.h:
3097 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
3098 (WebCore::CCTiledLayerImpl::bindContentsTexture):
3099 (WebCore::CCTiledLayerImpl::draw):
3100 * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
3101 * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
3102 (WebCore::CCVideoLayerImpl::draw):
3103 (WebCore::CCVideoLayerImpl::drawYUV):
3104 (WebCore::CCVideoLayerImpl::drawRGBA):
3105 * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
3107 2011-09-14 Anders Carlsson <andersca@apple.com>
3109 Get rid of WebCoreViewFactory and its WebViewFactory subclass
3110 https://bugs.webkit.org/show_bug.cgi?id=68124
3112 Reviewed by Sam Weinig.
3115 * WebCore.xcodeproj/project.pbxproj:
3116 * editing/mac/FrameSelectionMac.mm:
3117 * page/mac/FrameMac.mm:
3118 * page/mac/WebCoreViewFactory.h: Removed.
3119 * page/mac/WebCoreViewFactory.m: Removed.
3121 2011-09-14 David Hyatt <hyatt@apple.com>
3123 https://bugs.webkit.org/show_bug.cgi?id=52736
3125 Tiles were not being properly centered within border image sides for the "repeat"
3126 keyword. This patch fixes the buggy math behind the pattern tiling to actually get
3127 the initial phases correct.
3129 Reviewed by Sam Weinig.
3131 Added new tests in fast/borders and updated broken existing tests.
3133 * platform/graphics/Image.cpp:
3134 (WebCore::Image::drawTiled):
3136 2011-09-14 Anders Carlsson <andersca@apple.com>
3138 Remove DocTypeStrings.gperf
3139 https://bugs.webkit.org/show_bug.cgi?id=68119
3141 Reviewed by Sam Weinig.
3144 * CodeGenerators.pri:
3145 * DerivedSources.make:
3147 * WebCore.gyp/WebCore.gyp:
3148 * WebCore.vcproj/WebCore.vcproj:
3149 * WebCore.xcodeproj/project.pbxproj:
3150 * html/DocTypeStrings.gperf: Removed.
3151 * make-hash-tools.pl:
3152 * platform/HashTools.h:
3154 2011-09-14 Chris Rogers <crogers@google.com>
3156 Address lifetime issues in OfflineAudioDestinationNode (take 2)
3157 https://bugs.webkit.org/show_bug.cgi?id=68111
3159 Reviewed by Kenneth Russell.
3161 No new tests. This fixes existing layout tests.
3163 * webaudio/OfflineAudioDestinationNode.cpp:
3164 (WebCore::OfflineAudioDestinationNode::OfflineAudioDestinationNode):
3165 (WebCore::OfflineAudioDestinationNode::~OfflineAudioDestinationNode):
3166 (WebCore::OfflineAudioDestinationNode::startRendering):
3167 (WebCore::OfflineAudioDestinationNode::render):
3169 2011-09-14 David Hyatt <hyatt@apple.com>
3171 https://bugs.webkit.org/show_bug.cgi?id=68103
3173 Centered portions of border images don't render correctly. Make the tile scale factor have to be
3174 explicitly passed in and modify paintNinePieceImage to compute it for all sides. The attempts to
3175 implicitly compute the scale for the pattern based off the source and destination rects just don't
3176 work, since the center image rects don't provide the right information to be able to infer the
3179 Reviewed by Sam Weinig.
3181 Reset all the existing fast/borders pixel results to Lion for these changes.
3183 * platform/graphics/GraphicsContext.cpp:
3184 (WebCore::GraphicsContext::drawTiledImage):
3185 * platform/graphics/GraphicsContext.h:
3186 * platform/graphics/Image.cpp:
3187 (WebCore::Image::drawTiled):
3188 * platform/graphics/Image.h:
3189 * rendering/RenderBoxModelObject.cpp:
3190 (WebCore::RenderBoxModelObject::paintNinePieceImage):
3192 2011-09-14 Anders Carlsson <andersca@apple.com>
3194 Get rid of ResourceHandle::bufferedData()
3195 https://bugs.webkit.org/show_bug.cgi?id=68112
3197 Reviewed by David Hyatt.
3199 ResourceHandle::bufferedData() was only implemented on Mac, and the support in the underlying
3200 NSURLConnection class hasn't been there for several OS releases.
3202 * loader/ResourceLoader.cpp:
3203 (WebCore::ResourceLoader::resourceData):
3204 (WebCore::ResourceLoader::addData):
3205 * platform/network/ResourceHandle.h:
3206 * platform/network/cf/ResourceHandleCFNet.cpp:
3207 * platform/network/curl/ResourceHandleCurl.cpp:
3208 * platform/network/mac/ResourceHandleMac.mm:
3209 * platform/network/qt/ResourceHandleQt.cpp:
3210 * platform/network/soup/ResourceHandleSoup.cpp:
3211 * platform/network/win/ResourceHandleWin.cpp:
3213 2011-09-14 Mark Hahnenberg <mhahnenberg@apple.com>
3215 REGRESSION: r95108 broke Qt Linux tests
3216 https://bugs.webkit.org/show_bug.cgi?id=68104
3218 Reviewed by Csaba Osztrogonác.
3222 Build fix for Qt tests broken in r95108.
3224 * bridge/qt/qt_runtime.cpp:
3225 (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
3226 (JSC::Bindings::QtRuntimeMetaMethod::QtRuntimeMetaMethod):
3227 (JSC::Bindings::QtRuntimeConnectionMethod::QtRuntimeConnectionMethod):
3228 * bridge/qt/qt_runtime.h:
3230 2011-09-14 James Robinson <jamesr@chromium.org>
3232 [skia] fast/canvas/setWidthResetAfterForcedRender is flaky
3233 https://bugs.webkit.org/show_bug.cgi?id=67955
3235 Reviewed by Stephen White.
3237 When destroying an ImageBuffer due to a canvas resize, we weren't clearing the texture ID on the layer,
3238 resulting in future compositor draw calls binding an invalid texture. This results in the test failing and
3239 possibly drawing from a bad texture.
3241 Covered by fast/canvas/setWidthResetAfterForcedRender.html in the GPU configuration.
3243 * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
3244 (WebCore::Canvas2DLayerChromium::drawsContent)
3245 * platform/graphics/skia/ImageBufferSkia.cpp:
3246 (WebCore::ImageBuffer::~ImageBuffer):
3248 2011-09-14 Eric Seidel <eric@webkit.org>
3250 Remove ENABLE_SVG_USE as <use> is required by HTML5
3251 https://bugs.webkit.org/show_bug.cgi?id=68019
3253 Reviewed by Ryosuke Niwa.
3255 I missed a couple uses of SVG_USE in my previous patch.
3257 * dom/DOMImplementation.cpp:
3258 (WebCore::isSVG10Feature):
3259 (WebCore::isSVG11Feature):
3260 * svg/SVGUseElement.cpp:
3261 (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
3262 * svg/SVGUseElement.h:
3264 2011-09-14 Mark Hahnenberg <mhahnenberg@apple.com>
3266 Unzip initialization lists and constructors in JSCell hierarchy (6/7)
3267 https://bugs.webkit.org/show_bug.cgi?id=67692
3269 Reviewed by Geoffrey Garen.
3273 Completed the sixth level of the refactoring to add finishCreation()
3274 methods to all classes within the JSCell hierarchy with non-trivial
3277 This primarily consists of pushing the calls to finishCreation() down
3278 into the constructors of the subclasses of the fifth level of the hierarchy
3279 as well as pulling the finishCreation() calls out into the class's corresponding
3280 create() method if it has one. Doing both simultaneously allows us to
3281 maintain the invariant that the finishCreation() method chain is called exactly
3282 once during the creation of an object, since calling it any other number of
3283 times (0, 2, or more) will cause an assertion failure.
3286 * bindings/js/JSDOMBinding.h:
3287 (WebCore::DOMConstructorObject::DOMConstructorObject):
3288 (WebCore::DOMConstructorWithDocument::DOMConstructorWithDocument):
3289 (WebCore::DOMConstructorWithDocument::finishCreation):
3290 * bindings/js/JSDOMGlobalObject.cpp:
3291 (WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
3292 * bindings/js/JSDOMGlobalObject.h:
3293 * bindings/js/JSDOMWindowBase.cpp:
3294 (WebCore::JSDOMWindowBase::JSDOMWindowBase):
3295 (WebCore::JSDOMWindowBase::finishCreation):
3296 * bindings/js/JSDOMWindowBase.h:
3297 * bindings/js/JSWorkerContextBase.cpp:
3298 (WebCore::JSWorkerContextBase::JSWorkerContextBase):
3299 (WebCore::JSWorkerContextBase::finishCreation):
3300 * bindings/js/JSWorkerContextBase.h:
3301 * bindings/scripts/CodeGeneratorJS.pm:
3303 Added a finishCreation declaration and Moved the finishCreation call into the
3304 create method for all classes except for subclasses of JSWorkerContextBase and
3305 JSDOMWindowBase because those classes are on the next level, and it's easier
3306 to do all of these classes in one fell swoop rather than level by level.
3308 Added the implementation of the finishCreation method for the classes described above.
3309 (GenerateImplementation):
3310 Also added the finishCreation calls to the autogenerated DOM constructor classes.
3311 (GenerateConstructorDeclaration):
3312 (GenerateConstructorDefinition):
3314 * bindings/scripts/test/JS/JSTestInterface.cpp:
3315 (WebCore::JSTestInterfaceConstructor::create):
3316 (WebCore::JSTestInterfaceConstructor::JSTestInterfaceConstructor):
3317 (WebCore::JSTestInterfaceConstructor::finishCreation):
3318 (WebCore::JSTestInterface::JSTestInterface):
3319 (WebCore::JSTestInterface::finishCreation):
3320 * bindings/scripts/test/JS/JSTestInterface.h:
3321 (WebCore::JSTestInterface::create):
3322 (WebCore::JSTestInterfacePrototype::create):
3323 (WebCore::JSTestInterfacePrototype::JSTestInterfacePrototype):
3324 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
3325 (WebCore::JSTestMediaQueryListListenerConstructor::create):
3326 (WebCore::JSTestMediaQueryListListenerConstructor::JSTestMediaQueryListListenerConstructor):
3327 (WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):
3328 (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
3329 (WebCore::JSTestMediaQueryListListener::finishCreation):
3330 * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
3331 (WebCore::JSTestMediaQueryListListener::create):
3332 (WebCore::JSTestMediaQueryListListenerPrototype::create):
3333 (WebCore::JSTestMediaQueryListListenerPrototype::JSTestMediaQueryListListenerPrototype):
3334 * bindings/scripts/test/JS/JSTestObj.cpp:
3335 (WebCore::JSTestObjConstructor::create):
3336 (WebCore::JSTestObjConstructor::JSTestObjConstructor):
3337 (WebCore::JSTestObjConstructor::finishCreation):
3338 (WebCore::JSTestObj::JSTestObj):
3339 (WebCore::JSTestObj::finishCreation):
3340 * bindings/scripts/test/JS/JSTestObj.h:
3341 (WebCore::JSTestObj::create):
3342 (WebCore::JSTestObjPrototype::create):
3343 (WebCore::JSTestObjPrototype::JSTestObjPrototype):
3344 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
3345 (WebCore::JSTestSerializedScriptValueInterfaceConstructor::create):
3346 (WebCore::JSTestSerializedScriptValueInterfaceConstructor::JSTestSerializedScriptValueInterfaceConstructor):
3347 (WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):
3348 (WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
3349 (WebCore::JSTestSerializedScriptValueInterface::finishCreation):
3350 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
3351 (WebCore::JSTestSerializedScriptValueInterface::create):
3352 (WebCore::JSTestSerializedScriptValueInterfacePrototype::create):
3353 (WebCore::JSTestSerializedScriptValueInterfacePrototype::JSTestSerializedScriptValueInterfacePrototype):
3354 * bridge/c/CRuntimeObject.cpp:
3355 (JSC::Bindings::CRuntimeObject::CRuntimeObject):
3356 * bridge/c/CRuntimeObject.h:
3357 (JSC::Bindings::CRuntimeObject::create):
3358 * bridge/c/c_instance.cpp:
3359 (JSC::Bindings::CRuntimeMethod::CRuntimeMethod):
3360 (JSC::Bindings::CRuntimeMethod::finishCreation):
3361 * bridge/jni/jsc/JavaInstanceJSC.cpp:
3362 (JavaRuntimeMethod::JavaRuntimeMethod):
3363 (JavaRuntimeMethod::finishCreation):
3364 * bridge/jni/jsc/JavaRuntimeObject.cpp:
3365 (JSC::Bindings::JavaRuntimeObject::JavaRuntimeObject):
3366 * bridge/jni/jsc/JavaRuntimeObject.h:
3367 (JSC::Bindings::JavaRuntimeObject::create):
3368 * bridge/objc/ObjCRuntimeObject.h:
3369 (JSC::Bindings::ObjCRuntimeObject::create):
3370 * bridge/objc/ObjCRuntimeObject.mm:
3371 (JSC::Bindings::ObjCRuntimeObject::ObjCRuntimeObject):
3372 * bridge/objc/objc_instance.mm:
3373 (ObjCRuntimeMethod::ObjCRuntimeMethod):
3374 (ObjCRuntimeMethod::finishCreation):
3375 * bridge/qt/qt_instance.cpp:
3376 (JSC::Bindings::QtRuntimeObject::create):
3377 (JSC::Bindings::QtRuntimeObject::QtRuntimeObject):
3378 * bridge/qt/qt_pixmapruntime.cpp:
3379 (JSC::Bindings::QtPixmapRuntimeObject::create):
3380 (JSC::Bindings::QtPixmapRuntimeObject::QtPixmapRuntimeObject):
3381 * bridge/qt/qt_runtime.cpp:
3382 (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
3383 (JSC::Bindings::QtRuntimeMetaMethod::QtRuntimeMetaMethod):
3384 (JSC::Bindings::QtRuntimeMetaMethod::finishCreation):
3385 (JSC::Bindings::QtRuntimeConnectionMethod::QtRuntimeConnectionMethod):
3386 (JSC::Bindings::QtRuntimeConnectionMethod::finishCreation):
3387 * bridge/qt/qt_runtime.h:
3388 (JSC::Bindings::QtRuntimeMetaMethod::create):
3389 * bridge/runtime_method.cpp:
3390 (JSC::RuntimeMethod::RuntimeMethod):
3391 * bridge/runtime_method.h:
3392 (JSC::RuntimeMethod::create):
3394 2011-09-13 Eric Seidel <eric@webkit.org>
3396 Remove ENABLE_SVG_USE as <use> is required by HTML5
3397 https://bugs.webkit.org/show_bug.cgi?id=68019
3399 Reviewed by Ryosuke Niwa.
3401 * Configurations/FeatureDefines.xcconfig:
3402 * DerivedSources.make:
3406 2011-09-14 Eric Carlson <eric.carlson@apple.com>
3408 MediaPlayerPrivateAVFoundationObjC's "periodic time observer" is unnecessary
3409 https://bugs.webkit.org/show_bug.cgi?id=68056
3411 MediaPlayerPrivateAVFoundationObjC creates a "periodic time observer" not because it wants
3412 periodic callbacks, but because a time observer also fires whenever a seek completes. This is
3413 no longer necessary because it now uses but AVPlayerItem's
3414 -seekToTime:toleranceBefore:toleranceAfter:completionHandler to seek, so seek completions are
3417 Reviewed by Darin Adler.
3419 No new tests, code removed is tested by existing tests.
3421 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
3422 (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer):
3424 2011-09-14 Beth Dakin <bdakin@apple.com>
3426 https://bugs.webkit.org/show_bug.cgi?id=68054
3427 Return an image scale factor as well as an Image* from CachedImage::brokenImage()
3429 Reviewed by Darin Adler.
3431 CachedImage::brokenImage() now returns a pair<Image*, float> where the float
3432 represents the image's scale factor. This is important because currently, the
3433 broken image will either be only 1x or 2x, but a deviceScaleFactor could
3434 theoretically be something different (1.5, 3, etc). So it is not safe to assume
3435 that the image's scale factor is equivalent to the deviceScaleFactor, and
3436 hardcoding 2 for now is lame.
3437 * loader/cache/CachedImage.cpp:
3438 (WebCore::CachedImage::brokenImage):
3439 (WebCore::CachedImage::image):
3440 * loader/cache/CachedImage.h:
3441 * rendering/RenderImage.cpp:
3442 (WebCore::RenderImage::imageSizeForError):
3443 (WebCore::RenderImage::paintReplaced):
3445 2011-09-14 James Robinson <jamesr@chromium.org>
3447 [chromium] Move contents texture manager from LayerRendererChromium to CCLayerTreeHost
3448 https://bugs.webkit.org/show_bug.cgi?id=67440
3450 Reviewed by Kenneth Russell.
3452 This moves the contents TextureManager over to the CCLayerTreeHost, where it belongs, and adds in a commit path
3453 to make sure that textures are deleted even if the page is not visible. This move also removed the need for
3454 LayerRendererChromium's CCLayerTreeHost pointer, so I removed that as well. That meant moving the
3455 layerTreeAsText() logic over to the CCLayerImpl side, which is where it really belonged anyway.
3457 Covered by existing compositing/ tests and
3458 platform/chromium/compositor/lost-compositor-context-with-rendersurface.html
3460 * platform/graphics/chromium/LayerRendererChromium.cpp:
3461 (WebCore::LayerRendererChromium::releaseRenderSurfaceTextures):
3462 (WebCore::LayerRendererChromium::drawLayers):
3463 (WebCore::LayerRendererChromium::initializeSharedObjects):
3464 (WebCore::LayerRendererChromium::cleanupSharedObjects):
3465 * platform/graphics/chromium/LayerRendererChromium.h:
3466 (WebCore::LayerRendererChromium::setContentsTextureMemoryUseBytes):
3467 * platform/graphics/chromium/TextureManager.cpp:
3468 (WebCore::TextureManager::highLimitBytes):
3469 (WebCore::TextureManager::reclaimLimitBytes):
3470 (WebCore::TextureManager::lowLimitBytes):
3471 * platform/graphics/chromium/TextureManager.h:
3472 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
3473 (WebCore::CCLayerTreeHost::initialize):
3474 (WebCore::CCLayerTreeHost::~CCLayerTreeHost):
3475 (WebCore::CCLayerTreeHost::deleteContentsTextures):
3476 (WebCore::CCLayerTreeHost::commitTo):
3477 (WebCore::CCLayerTreeHost::setVisible):
3478 (WebCore::CCLayerTreeHost::contentsTextureManager):
3479 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
3480 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
3481 (WebCore::CCLayerTreeHostImpl::setVisible):
3482 * platform/graphics/chromium/cc/CCProxy.h:
3483 * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
3484 (WebCore::CCSingleThreadProxy::setNeedsCommit):
3485 (WebCore::CCSingleThreadProxy::stop):
3486 * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
3487 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
3488 (WebCore::CCThreadProxy::setNeedsCommit):
3489 (WebCore::CCThreadProxy::setNeedsCommitOnCCThread):
3490 (WebCore::CCThreadProxy::layerTreeHostClosedOnCCThread):
3491 * platform/graphics/chromium/cc/CCThreadProxy.h:
3493 2011-09-14 David Hyatt <hyatt@apple.com>
3495 https://bugs.webkit.org/show_bug.cgi?id=68040
3497 Make sure border image sub-properties can be specified in any order.
3499 Reviewed by Beth Dakin.
3501 New tests in fast/borders.
3503 * css/CSSParser.cpp:
3504 (WebCore::BorderImageParseContext::BorderImageParseContext):
3505 (WebCore::BorderImageParseContext::canAdvance):
3506 (WebCore::BorderImageParseContext::setCanAdvance):
3507 (WebCore::BorderImageParseContext::allowCommit):
3508 (WebCore::BorderImageParseContext::allowImage):
3509 (WebCore::BorderImageParseContext::allowImageSlice):
3510 (WebCore::BorderImageParseContext::allowSlash):
3511 (WebCore::BorderImageParseContext::requireWidth):
3512 (WebCore::BorderImageParseContext::requireOutset):
3513 (WebCore::BorderImageParseContext::commitImage):
3514 (WebCore::BorderImageParseContext::commitImageSlice):
3515 (WebCore::BorderImageParseContext::commitSlash):
3516 (WebCore::BorderImageParseContext::commitBorderWidth):
3517 (WebCore::BorderImageParseContext::commitBorderOutset):
3518 (WebCore::BorderImageParseContext::commitRepeat):
3519 (WebCore::CSSParser::parseBorderImage):
3520 (WebCore::CSSParser::parseBorderImageRepeat):
3521 (WebCore::CSSParser::parseBorderImageSlice):
3522 (WebCore::CSSParser::parseBorderImageQuad):
3523 * css/CSSParserValues.h:
3524 (WebCore::CSSParserValueList::previous):
3526 2011-09-14 Mike Reed <reed@google.com>
3528 query SystemParametersInfo for GDI font smoothing settings
3529 https://bugs.webkit.org/show_bug.cgi?id=68080
3531 Reviewed by Stephen White.
3533 No new tests. fixes antialiasing issues based on User settings
3535 * platform/graphics/skia/SkiaFontWin.cpp:
3536 (WebCore::getDefaultGDITextFlags):
3537 (WebCore::setupPaintForFont):
3539 2011-09-13 David Hyatt <hyatt@apple.com>
3541 https://bugs.webkit.org/show_bug.cgi?id=68050
3543 Regressions in some layout tests from making border/mask/reflection nine-piece-image
3544 parsing match the spec, which allows any of the pieces to be omitted and to also be
3545 specifiable in any order.
3547 When the higher level code suddenly allowed the image slices to be omitted, the fixup
3548 for legacy compatibility for reflections and masks in the parseBorderImageSlice function
3549 no longer happened because that function no longer got called.
3551 The fix is to properly set the defaults to include the "fill" keyword, so the fixup is
3552 applied to the NinePieceImages you create before you ever map anything in from the rules.
3554 This also has the side effect of fixing -webkit-max-box-image-slice to actually dump as
3555 "0 fill" instead of just "0", which is the correct initial value for this property.
3557 Reviewed by Adam Roben.
3559 * css/CSSParser.cpp:
3560 (WebCore::CSSParser::parseBorderImageSlice):
3561 * css/CSSStyleSelector.cpp:
3562 (WebCore::CSSStyleSelector::applyProperty):
3563 * rendering/style/StyleRareNonInheritedData.cpp:
3564 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
3565 * rendering/style/StyleReflection.h:
3566 (WebCore::StyleReflection::StyleReflection):
3568 2011-09-13 Pavel Feldman <pfeldman@google.com>
3570 Web Inspector: InspectorInstrumentation::frameDestroyed is called after m_page has been reset.
3571 https://bugs.webkit.org/show_bug.cgi?id=67997
3573 We should not instrument frameDestroyed event from within Frame's destructor
3574 since frame's m_page pointer is likely to be 0 by that time and appropriate
3575 instrumenting agent won't be found. As a result, stale frame with its id
3576 end up in the inspector.
3578 This change wipes out frame binding from the inspector upon detach rather
3581 Reviewed by Tony Gentilcore.
3583 * inspector/InspectorInstrumentation.cpp:
3584 (WebCore::InspectorInstrumentation::frameDetachedImpl):
3585 * inspector/InspectorInstrumentation.h:
3586 * inspector/InspectorPageAgent.cpp:
3587 (WebCore::InspectorPageAgent::frameDetached):
3588 * inspector/InspectorPageAgent.h:
3589 * loader/FrameLoader.cpp:
3590 (WebCore::FrameLoader::detachFromParent):
3592 (WebCore::Frame::~Frame):
3593 (WebCore::Frame::detachFromPage):
3596 2011-09-14 Pavel Feldman <pfeldman@google.com>
3598 Not reviewed: rolling out r95089.
3600 * inspector/InspectorInstrumentation.cpp:
3601 (WebCore::InspectorInstrumentation::frameDestroyedImpl):
3602 (WebCore::InspectorInstrumentation::instrumentingAgentsForPage):
3603 * inspector/InspectorInstrumentation.h:
3604 (WebCore::InspectorInstrumentation::frameWindowDiscarded):
3605 (WebCore::InspectorInstrumentation::domContentLoadedEventFired):
3606 (WebCore::InspectorInstrumentation::loadEventFired):
3607 (WebCore::InspectorInstrumentation::didCommitLoad):
3608 (WebCore::InspectorInstrumentation::frameDestroyed):
3609 * inspector/InspectorPageAgent.cpp:
3610 (WebCore::InspectorPageAgent::frameDetached):
3611 (WebCore::InspectorPageAgent::frameDestroyed):
3612 * inspector/InspectorPageAgent.h:
3614 (WebCore::Frame::~Frame):
3616 2011-09-14 Ilya Tikhonovsky <loislo@chromium.org>
3618 Web Inspector: requestAnimationFrame callbacks don't show up in the timeline panel.
3619 https://bugs.webkit.org/show_bug.cgi?id=67986
3621 Reviewed by Pavel Feldman.
3623 Test: inspector/timeline/timeline-animation-frame.html
3625 * English.lproj/localizedStrings.js:
3626 * bindings/v8/V8Proxy.cpp:
3627 (WebCore::V8Proxy::callFunction):
3628 (WebCore::V8Proxy::callFunctionWithoutFrame):
3629 (WebCore::V8Proxy::instrumentedCallFunction):
3630 * bindings/v8/V8Proxy.h:
3631 * bindings/v8/custom/V8CustomVoidCallback.cpp:
3632 (WebCore::invokeCallback):
3633 * dom/ScriptedAnimationController.cpp:
3634 (WebCore::ScriptedAnimationController::registerCallback):
3635 (WebCore::ScriptedAnimationController::cancelCallback):
3636 (WebCore::ScriptedAnimationController::serviceScriptedAnimations):
3637 * inspector/InspectorInstrumentation.cpp:
3638 (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallbackImpl):
3639 (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallbackImpl):
3640 (WebCore::InspectorInstrumentation::willFireAnimationFrameEventImpl):
3641 (WebCore::InspectorInstrumentation::didFireAnimationFrameEventImpl):
3642 * inspector/InspectorInstrumentation.h:
3643 (WebCore::InspectorInstrumentation::willCallFunction):
3644 (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallback):
3645 (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallback):
3646 (WebCore::InspectorInstrumentation::willFireAnimationFrameEvent):
3647 (WebCore::InspectorInstrumentation::didFireAnimationFrameEvent):
3648 * inspector/InspectorTimelineAgent.cpp:
3649 (WebCore::InspectorTimelineAgent::didRegisterAnimationFrameCallback):
3650 (WebCore::InspectorTimelineAgent::didCancelAnimationFrameCallback):
3651 (WebCore::InspectorTimelineAgent::willFireAnimationFrameEvent):
3652 (WebCore::InspectorTimelineAgent::didFireAnimationFrameEvent):
3653 * inspector/InspectorTimelineAgent.h:
3654 * inspector/TimelineRecordFactory.cpp:
3655 (WebCore::TimelineRecordFactory::createAnimationFrameCallbackData):
3656 * inspector/TimelineRecordFactory.h:
3657 * inspector/front-end/TimelineAgent.js:
3658 * inspector/front-end/TimelinePanel.js:
3659 (WebInspector.TimelinePanel):
3660 (WebInspector.TimelinePanel.prototype.get _recordStyles):
3661 (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
3662 (WebInspector.TimelinePanel.prototype._clearPanel):
3663 (WebInspector.TimelinePanel.FormattedRecord):
3664 (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
3665 (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
3667 2011-09-13 Pavel Feldman <pfeldman@google.com>
3669 Web Inspector: InspectorInstrumentation::frameDestroyed is called after m_page has been reset.
3670 https://bugs.webkit.org/show_bug.cgi?id=67997
3672 We should not instrument frameDestroyed event from within Frame's destructor
3673 since frame's m_page pointer is likely to be 0 by that time and appropriate
3674 instrumenting agent won't be found. As a result, stale frame with its id
3675 end up in the inspector.
3677 This change wipes out frame binding from the inspector upon detach rather
3678 than destroy + adds an assertion into the inspector agents lookup with 0 page.
3680 Reviewed by Tony Gentilcore.
3682 * inspector/InspectorInstrumentation.cpp:
3683 (WebCore::InspectorInstrumentation::frameDetachedImpl):
3684 (WebCore::InspectorInstrumentation::instrumentingAgentsForPage):
3685 * inspector/InspectorInstrumentation.h:
3686 (WebCore::InspectorInstrumentation::frameWindowDiscarded):
3687 (WebCore::InspectorInstrumentation::domContentLoadedEventFired):
3688 (WebCore::InspectorInstrumentation::loadEventFired):
3689 (WebCore::InspectorInstrumentation::frameDetached):
3690 (WebCore::InspectorInstrumentation::didCommitLoad):
3691 * inspector/InspectorPageAgent.cpp:
3692 (WebCore::InspectorPageAgent::frameDetached):
3693 * inspector/InspectorPageAgent.h:
3694 * loader/FrameLoader.cpp:
3695 (WebCore::FrameLoader::detachFromParent):
3697 (WebCore::Frame::~Frame):
3698 (WebCore::Frame::detachFromPage):
3699 (WebCore::Frame::transferChildFrameToNewDocument):
3702 2011-09-14 Sheriff Bot <webkit.review.bot@gmail.com>
3704 Unreviewed, rolling out r95080.
3705 http://trac.webkit.org/changeset/95080
3706 https://bugs.webkit.org/show_bug.cgi?id=68070
3708 It caused some 2d.composite.uncovered tests fail (Requested by
3711 * html/canvas/CanvasRenderingContext2D.cpp:
3712 (WebCore::CanvasRenderingContext2D::clearCanvas):
3713 (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere):
3715 2011-09-13 Pavel Feldman <pfeldman@google.com>
3717 Web Inspector: [v8] building call frame info for location-less internal script function crashes.
3718 https://bugs.webkit.org/show_bug.cgi?id=67991
3720 Reviewed by Yury Semikhatsky.
3722 Test: inspector/debugger/debugger-pause-in-internal.html
3724 * bindings/v8/DebuggerScript.js:
3726 * bindings/v8/ScriptDebugServer.cpp:
3727 (WebCore::ScriptDebugServer::currentCallFrame):
3729 2011-09-14 Ben Wells <benwells@chromium.org>
3731 Large canvas fills should not crash or create unnecessarily large image buffers
3732 https://bugs.webkit.org/show_bug.cgi?id=67988
3734 When using source-in, destination-in, source-out, or destination-atop a temporary
3735 buffer is created. This buffer only needs to be big enough to cover the intersection
3736 of the path and the canvas.
3738 This change also adds some null checks for failures to create contexts or buffers.
3740 Reviewed by Stephen White.
3742 Test: fast/canvas/canvas-large-fills.html
3744 * html/canvas/CanvasRenderingContext2D.cpp:
3745 (WebCore::CanvasRenderingContext2D::clearCanvas):
3746 (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere):
3748 2011-09-14 Kentaro Hara <haraken@google.com>
3750 Implement a PageTransitionEvent constructor for JSC
3751 https://bugs.webkit.org/show_bug.cgi?id=68048
3753 Reviewed by Sam Weinig.
3755 The spec for the PageTransitionEvent constructor is here:
3756 http://www.whatwg.org/specs/web-apps/current-work/#pagetransitionevent
3758 Test: fast/events/constructors/page-transition-event-constructor.html
3760 * bindings/generic/EventConstructors.h: Added a definition for the PageTransitionEvent constructor.
3761 * bindings/js/JSEventConstructors.cpp: Added #includes for PageTransitionEvent.
3762 * dom/PageTransitionEvent.cpp:
3763 (WebCore::PageTransitionEventInit::PageTransitionEventInit):
3764 (WebCore::PageTransitionEvent::PageTransitionEvent):
3765 (WebCore::PageTransitionEvent::initPageTransitionEvent):
3766 * dom/PageTransitionEvent.h: Added a definition for PageTransitionEventInit.
3767 (WebCore::PageTransitionEvent::create):
3768 (WebCore::PageTransitionEvent::isPageTransitionEvent):
3769 (WebCore::PageTransitionEvent::persisted):
3770 * dom/PageTransitionEvent.idl: Makes PageTransitionEvent constructible.
3772 2011-09-13 Sheriff Bot <webkit.review.bot@gmail.com>
3774 Unreviewed, rolling out r95058.
3775 http://trac.webkit.org/changeset/95058
3776 https://bugs.webkit.org/show_bug.cgi?id=68058
3778 It made css3/calc/regression-62276.html crash (Requested by
3781 * css/CSSParser.cpp:
3782 (WebCore::BorderImageParseContext::BorderImageParseContext):
3783 (WebCore::BorderImageParseContext::allowBreak):
3784 (WebCore::BorderImageParseContext::allowWidth):
3785 (WebCore::BorderImageParseContext::allowOutset):
3786 (WebCore::BorderImageParseContext::allowRepeat):
3787 (WebCore::BorderImageParseContext::commitImage):
3788 (WebCore::BorderImageParseContext::commitImageSlice):
3789 (WebCore::BorderImageParseContext::commitSlash):
3790 (WebCore::BorderImageParseContext::commitBorderWidth):
3791 (WebCore::BorderImageParseContext::commitBorderOutset):
3792 (WebCore::BorderImageParseContext::commitRepeat):
3793 (WebCore::CSSParser::parseBorderImage):
3794 (WebCore::CSSParser::parseBorderImageRepeat):
3795 (WebCore::CSSParser::parseBorderImageSlice):
3796 (WebCore::CSSParser::parseBorderImageQuad):
3797 * css/CSSParserValues.h:
3799 2011-09-13 Abhishek Arya <inferno@chromium.org>
3801 Crash in RenderScrollbarPart::imageChanged.
3802 https://bugs.webkit.org/show_bug.cgi?id=68009
3804 Reviewed by Simon Fraser.
3806 When a custom scrollbar is removed from its FrameView, its destruction
3807 can be delayed because of RefPtr maintained in EventHandler class
3808 (m_lastScrollbarUnderMouse). Upon removal, we delete all the scrollbar
3809 parts so that they don't link back to scrollbar. However, because of the
3810 delay, we can have a call to updateScrollbarPart which recreates it.
3811 When scrollbar is getting destroyed, we just check to see if there are
3812 remaining scrollbar parts and if yes, we destroy them.
3814 Test: scrollbars/scrollbar-part-created-with-no-parent-crash.html
3816 * rendering/RenderScrollbar.cpp:
3817 (WebCore::RenderScrollbar::~RenderScrollbar):
3819 2011-09-13 Adam Klein <adamk@chromium.org>
3821 Fix cssText property of counter-valued CSSPrimitiveValue and avoid uninitialized read
3822 https://bugs.webkit.org/show_bug.cgi?id=68021
3824 Reviewed by Tony Chang.
3826 Reported by valgrind in http://crbug.com/60653.
3828 Besides fixing the uninitialized read, add support for outputting the
3829 list separator for counters() calls and the list-style name.
3831 Test: fast/css/counters/counter-cssText.html
3833 * css/CSSPrimitiveValue.cpp:
3834 (WebCore::CSSPrimitiveValue::cssText):
3836 2011-09-13 Kenichi Ishibashi <bashi@chromium.org>
3838 WebFont followed tiny monospace text displays weird
3839 https://bugs.webkit.org/show_bug.cgi?id=67996
3841 Reviewed by Darin Adler.
3843 Always call wkSetCGFontRenderingMode() in Font::drawGlyphs() so that the rendering mode is set correctly.
3845 Test: platform/mac/fast/text/webfont-after-tiny-monospace-text.html
3847 * platform/graphics/mac/FontMac.mm:
3848 (WebCore::Font::drawGlyphs):
3850 2011-09-13 Tom Sepez <tsepez@chromium.org>
3852 Fix XSS auditor bypass when inline handlers contain comments.
3853 https://bugs.webkit.org/show_bug.cgi?id=27895
3855 Reviewed by Adam Barth.
3857 Tests: http/tests/security/xssAuditor/property-escape-comment.html
3858 http/tests/security/xssAuditor/property-escape-entity.html
3859 http/tests/security/xssAuditor/property-escape-quote.html
3861 * html/parser/XSSAuditor.cpp:
3862 (WebCore::XSSAuditor::snippetForAttribute):
3864 2011-09-13 Kentaro Hara <haraken@google.com>
3866 Implement a HashChangeEvent constructor for V8
3867 https://bugs.webkit.org/show_bug.cgi?id=67969
3869 Reviewed by Nate Chapin.
3871 Test: fast/events/constructors/hash-change-event-constructor.html
3873 * bindings/v8/custom/V8EventConstructors.cpp: Added the HashChangeEvent constructor.
3874 * dom/HashChangeEvent.idl: Added a 'V8CustomConstructor' attribute.
3876 2011-09-13 Jeremy Apthorp <jeremya@google.com>
3878 Fix crash when an iframe element is removed during a transition to
3880 https://bugs.webkit.org/show_bug.cgi?id=67960
3882 Reviewed by Adam Barth.
3884 Test: fullscreen/full-screen-remove-ancestor-during-transition.html
3887 (WebCore::Document::~Document):
3888 Clear the list of elements to which we need to send a fullscreenchange
3891 2011-09-13 David Hyatt <hyatt@apple.com>
3893 https://bugs.webkit.org/show_bug.cgi?id=68040
3895 Make sure border image sub-properties can be specified in any order.
3897 Reviewed by Beth Dakin.
3899 New tests in fast/borders.
3901 * css/CSSParser.cpp:
3902 (WebCore::BorderImageParseContext::BorderImageParseContext):
3903 (WebCore::BorderImageParseContext::canAdvance):
3904 (WebCore::BorderImageParseContext::setCanAdvance):
3905 (WebCore::BorderImageParseContext::allowCommit):
3906 (WebCore::BorderImageParseContext::allowImage):
3907 (WebCore::BorderImageParseContext::allowImageSlice):
3908 (WebCore::BorderImageParseContext::allowSlash):
3909 (WebCore::BorderImageParseContext::requireWidth):
3910 (WebCore::BorderImageParseContext::requireOutset):
3911 (WebCore::BorderImageParseContext::commitImage):
3912 (WebCore::BorderImageParseContext::commitImageSlice):
3913 (WebCore::BorderImageParseContext::commitSlash):
3914 (WebCore::BorderImageParseContext::commitBorderWidth):
3915 (WebCore::BorderImageParseContext::commitBorderOutset):
3916 (WebCore::BorderImageParseContext::commitRepeat):
3917 (WebCore::CSSParser::parseBorderImage):
3918 (WebCore::CSSParser::parseBorderImageRepeat):
3919 (WebCore::CSSParser::parseBorderImageSlice):
3920 (WebCore::CSSParser::parseBorderImageQuad):
3921 * css/CSSParserValues.h:
3922 (WebCore::CSSParserValueList::previous):
3924 2011-09-13 Jeff Miller <jeffm@apple.com>
3926 WebCore::Cursor::ensurePlatformCursor() should always set a valid platform cursor on Windows
3927 https://bugs.webkit.org/show_bug.cgi?id=68043
3929 Make sure we set a valid platform cursor in the Cursor::NoDrop case, and add a default
3930 clause that uses the arrow cursor in case another cursor type is added in the future
3931 and we forget to update ensurePlatformCursor().
3933 Reviewed by Anders Carlsson.
3935 * platform/win/CursorWin.cpp:
3936 (WebCore::Cursor::ensurePlatformCursor): Always set a valid platform cursor.
3938 2011-09-12 Jon Honeycutt <jhoneycutt@apple.com>
3940 MSAA: WebKit reports the document state as disabled
3941 https://bugs.webkit.org/show_bug.cgi?id=67974
3942 <rdar://problem/10095898>
3944 Reviewed by Brian Weinstein.
3946 Test: platform/win/accessibility/document-enabled-state.html
3948 * accessibility/AccessibilityScrollView.h:
3949 (WebCore::AccessibilityScrollView::isEnabled):
3950 This object backs the AccessibleDocument on Windows - always return
3951 true for its enabled state.
3953 2011-08-11 Cris Neckar <cdn@chromium.org>
3955 Fixes several bugs when adding CounterNodes to a tree which can cause asymetrical relationships.
3956 https://bugs.webkit.org/show_bug.cgi?id=65996
3958 Reviewed by Eric Seidel.
3960 Test: fast/css/counters/counter-reparent-table-children-crash.html
3962 * rendering/CounterNode.cpp:
3963 (WebCore::CounterNode::insertAfter):
3964 * rendering/RenderCounter.cpp:
3965 (WebCore::findPlaceForCounter):
3966 (WebCore::makeCounterNode):
3968 2011-09-13 Beth Dakin <bdakin@apple.com>
3970 Adding a comment I forgot to add before.
3972 * rendering/RenderImage.cpp:
3973 (WebCore::RenderImage::imageSizeForError):
3975 2011-09-13 Antti Koivisto <antti@apple.com>
3977 Move identifier filter from CSSStyleSelector to SelectorChecker
3978 https://bugs.webkit.org/show_bug.cgi?id=68025
3980 Reviewed by Sam Weinig.
3982 This is a more logical place for this code. It also makes CSSStyleSelector slightly less bloated.
3983 It will make it possible to use fastRejectSelector for querySelectorAll in the future.
3985 * css/CSSStyleSelector.cpp:
3986 (WebCore::loadViewSourceStyle):
3987 (WebCore::CSSStyleSelector::matchRulesForList):
3988 (WebCore::RuleData::RuleData):
3989 * css/CSSStyleSelector.h:
3990 (WebCore::CSSStyleSelector::pushParent):
3991 (WebCore::CSSStyleSelector::popParent):
3992 * css/SelectorChecker.cpp:
3993 (WebCore::collectElementIdentifierHashes):
3994 (WebCore::SelectorChecker::pushParentStackFrame):
3995 (WebCore::SelectorChecker::popParentStackFrame):
3996 (WebCore::SelectorChecker::pushParent):
3997 (WebCore::SelectorChecker::popParent):
3998 (WebCore::collectDescendantSelectorIdentifierHashes):
3999 (WebCore::SelectorChecker::collectIdentifierHashes):
4000 * css/SelectorChecker.h:
4001 (WebCore::SelectorChecker::parentStackIsConsistent):
4002 (WebCore::SelectorChecker::ParentStackFrame::ParentStackFrame):
4003 (WebCore::SelectorChecker::fastRejectSelector):
4005 2011-09-13 Kiyoto Tamura <owenestea@gmail.com>
4007 For compatibility, execCommand should support deprecated 'useCSS' alias for 'styleWithCSS'
4008 https://bugs.webkit.org/show_bug.cgi?id=36683
4010 Reviewed by Ryosuke Niwa.
4012 In addition to supporting the deprecated 'useCSS', 'styleWithCSS' now accepts any argument other than
4013 the boolean false or the case-insensitive string "false". This is per
4014 http://aryeh.name/spec/editing/editing.html#the-stylewithcss-command
4016 Tests: editing/execCommand/style-with-css.html
4017 editing/execCommand/use-css.html
4019 * editing/EditorCommand.cpp:
4020 (WebCore::executeStyleWithCSS):
4021 (WebCore::executeUseCSS):
4022 (WebCore::createCommandMap):
4024 2011-09-13 Anders Carlsson <andersca@apple.com>
4026 Disable C++ exceptions when building with clang
4027 https://bugs.webkit.org/show_bug.cgi?id=68031
4028 <rdar://problem/9556880>
4030 Reviewed by Mark Rowe.
4032 * Configurations/Base.xcconfig:
4034 2011-09-13 Beth Dakin <bdakin@apple.com>
4036 https://bugs.webkit.org/show_bug.cgi?id=67885
4037 Outline for the high-resolution broken image icon draws at 2x
4039 <rdar://problem/10104637>
4041 Reviewed by Dan Bernstein.
4043 Scaled the image size to account for the deviceScaleFactor.
4044 * rendering/RenderImage.cpp:
4045 (WebCore::RenderImage::imageSizeForError):
4047 2011-09-13 Tim Horton <timothy_horton@apple.com>
4049 REGRESSION (64275): Shape pattern-image fill turns black
4050 https://bugs.webkit.org/show_bug.cgi?id=51061
4051 <rdar://problem/8504705>
4053 Reviewed by Simon Fraser.
4055 When destroying a resource, register clients who are losing their
4056 resource as having pending resources, so they can be resolved in the case a
4057 resource with that id is re-registered.
4059 Test: svg/custom/pending-resource-after-removal.xhtml
4061 * rendering/svg/SVGResourcesCache.cpp:
4062 (WebCore::SVGResourcesCache::resourceDestroyed):
4063 * svg/SVGStyledElement.h:
4064 (WebCore::toSVGStyledElement): Added.
4066 2011-09-13 Eric Seidel <eric@webkit.org>
4068 Remove ENABLE_SVG_FOREIGN_OBJECT as it is a required part of HTML5
4069 https://bugs.webkit.org/show_bug.cgi?id=68018
4071 Reviewed by Ryosuke Niwa.
4073 * Configurations/FeatureDefines.xcconfig:
4074 * DerivedSources.make:
4077 * dom/DOMImplementation.cpp:
4078 (WebCore::isSVG10Feature):
4079 (WebCore::isSVG11Feature):
4081 (WebCore::Text::createRenderer):
4083 * page/DOMWindow.idl:
4084 * rendering/svg/RenderSVGForeignObject.cpp:
4085 * rendering/svg/RenderSVGForeignObject.h:
4086 * svg/SVGAnimateMotionElement.cpp:
4087 (WebCore::SVGAnimateMotionElement::hasValidAttributeType):
4088 * svg/SVGForeignObjectElement.cpp:
4089 * svg/SVGForeignObjectElement.h:
4090 * svg/SVGForeignObjectElement.idl:
4091 * svg/SVGLocatable.cpp:
4092 (WebCore::isViewportElement):
4093 * svg/SVGSVGElement.cpp:
4094 (WebCore::SVGSVGElement::isOutermostSVG):
4095 * svg/SVGUseElement.cpp:
4096 (WebCore::isDisallowedElement):
4097 (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
4100 2011-09-13 Joseph Pecoraro <joepeck@webkit.org>
4102 CRASH under WebCore::ArchiveResourceCollection::addAllResources loading WebArchive
4103 https://bugs.webkit.org/show_bug.cgi?id=67983
4105 Reviewed by Darin Adler.
4107 Null mimetypes are okay for subresources, but as previously discovered
4108 in bug 41082 they were required for main resources. Here we ensure
4109 that they are required for main resources, but we allow null mimetypes
4112 To fix a crash for bad input we never add a null ArchiveResource to the
4113 Archive's subresource collection. It is useless and causes crashes whenever
4114 someone iterates the Archive's subresource collection.
4116 Test: webarchive/loading/test-loading-archive-subresource-null-mimetype.html
4118 * loader/archive/cf/LegacyWebArchive.cpp:
4119 (WebCore::LegacyWebArchive::createResource):
4120 Allow a null mimetype, just type check from the dictionary.
4122 (WebCore::LegacyWebArchive::extract):
4123 Require a mimetype for the main resource. Do not add null
4124 subresources to the subresource list.
4126 2011-09-13 Mihai Parparita <mihaip@chromium.org>
4128 [Chromium] Remove javascript_engine from WebCore.gyp
4129 https://bugs.webkit.org/show_bug.cgi?id=68001
4131 Reviewed by Tony Chang.
4133 Remove javascript_engine GYP variable (similar to the removal done on
4134 the Chromium side with http://crrev.com/100692)
4136 * WebCore.gyp/WebCore.gyp:
4138 2011-09-12 Ryosuke Niwa <rniwa@webkit.org>
4140 [CSS3 Backgrounds and Borders] Add unprefixed border-image shorthand.
4141 https://bugs.webkit.org/show_bug.cgi?id=67970
4143 Reviewed by David Hyatt.
4145 Also update CSSStyleSelector.cpp to support border-image to suppress assertion in
4146 fast/borders/border-image-omit-right-slice.html
4148 * css/CSSStyleSelector.cpp:
4149 (WebCore::CSSStyleSelector::applyProperty):
4150 (WebCore::CSSStyleSelector::mapNinePieceImage):
4152 2011-09-13 Xianzhu Wang <wangxianzhu@chromium.org>
4154 Reviewed by Darin Adler.
4156 Webkit wraps between hyphen-minus and numeric characters
4157 https://bugs.webkit.org/show_bug.cgi?id=20677
4159 Disallow wrapping between a hyphen-minus and a digit if the hyphen-minus
4160 is not directly after a digit or a letter.
4162 Test: fast/text/line-breaks-after-hyphen-before-number.html
4164 * rendering/break_lines.cpp:
4165 (WebCore::asciiLineBreakTable): Disabled line-breaking after '-' and before '.', '0'-'9'. Note: the change for '0'-'9' doesn't really matter because the case is handled hard-coded in shouldBreakAfter().
4166 (WebCore::shouldBreakAfter): Changed line-breaking behavior after '-'.
4167 (WebCore::nextBreakablePosition): Passes lastLastCh to shouldBreakAfter.
4169 2011-09-13 Erik Wright <erikwright@chromium.org>
4171 platform/graphics/gtk/FontGtk.cpp was renamed to platform/graphics/pango/FontPango.cpp . Reflect this change in WebCore.gypi to fix a Chromium build breakage.
4172 https://bugs.webkit.org/show_bug.cgi?id=68000
4174 Reviewed by Tony Gentilcore.
4176 No change in functionality, thus no new tests.
4180 2011-09-10 Mikhail Naganov <mnaganov@chromium.org>
4182 Web Inspector: Profiler: Fix overlapping data in function names column.
4183 https://bugs.webkit.org/show_bug.cgi?id=67896
4185 Reviewed by Pavel Feldman.
4187 * inspector/front-end/ProfileDataGridTree.js:
4188 (WebInspector.ProfileDataGridNode.prototype