1 2013-04-11 Ryosuke Niwa <rniwa@webkit.org>
3 Another Mac Lion build fix attempt after r148197.
5 * page/scrolling/mac/ScrollingStateScrollingNodeMac.mm:
7 2013-04-11 Sukolsak Sakshuwong <sukolsak@gmail.com>
9 Unable to paste twice in input field when specific CSS present
10 https://bugs.webkit.org/show_bug.cgi?id=108675
12 Reviewed by Ryosuke Niwa.
14 When we are pre-rendering text in ReplaceSelectionCommand, we shouldn't care
15 whether the content is clipped by its ancestors or not. This bug was caused
16 by the fact the plainText() method returned an empty string because the text
17 was fully clipped by its ancestors. Make plainText ignore style visibility.
19 Test: editing/inserting/insert-text-into-text-field.html
21 * editing/ReplaceSelectionCommand.cpp:
22 (WebCore::ReplacementFragment::ReplacementFragment):
24 2013-04-11 Martin Robinson <mrobinson@igalia.com>
26 [GTK] Add accelerated 2D canvas support using cairo-gl
27 https://bugs.webkit.org/show_bug.cgi?id=104672
29 Reviewed by Alejandro G. Castro.
31 No new tests. We do not yet have the ability to run tests against
34 * platform/graphics/GraphicsContext.cpp:
35 (WebCore): We don't use the stub implementation of isAcceleratedContext any longer.
36 * platform/graphics/ImageBuffer.cpp:
37 (WebCore): Ditto for ImageBuffer::platformLayer.
38 * platform/graphics/cairo/GLContext.h:
39 (GLContext): Added method to get a cairo_device_t from the context.
40 * platform/graphics/cairo/GraphicsContextCairo.cpp:
41 (WebCore::GraphicsContext::isAcceleratedContext): Return true when we are a CairoGL surface.
42 * platform/graphics/cairo/ImageBufferCairo.cpp:
43 (WebCore::ImageBufferData::ImageBufferData): Initialize the size and the texture to 0.
44 (WebCore::createCairoGLSurface): Added this helper.
45 (WebCore::ImageBuffer::ImageBuffer): When we are in accelerated rendering mode, create
47 (WebCore::ImageBuffer::platformTransformColorSpace): Do not implement this for accelerated
49 (WebCore::mapSurfaceToImage): Added this helper, since we don't require Cairo 1.12 yet,
50 which provides an builtin implementation.
51 (WebCore::unmapSurfaceFromImage): Ditto.
52 (WebCore::getImageData): Map the surface to an image surface first.
53 (WebCore::ImageBuffer::putByteArray): Ditto.
54 (WebCore::ImageBufferData::paintToTextureMapper): Connect the accelerated canvas into the
55 TextureMapper infrastructure.
56 (WebCore::ImageBuffer::platformLayer): This lets the TextureMapper at the ImageBufferData.
57 * platform/graphics/cairo/ImageBufferDataCairo.h:
58 (ImageBufferData): Subclass TexturMapperPlatformLayer where appropriate.
59 * platform/graphics/egl/GLContextEGL.cpp: Added implementation of cairoDevice.
60 * platform/graphics/egl/GLContextEGL.h: Ditto.
61 * platform/graphics/glx/GLContextGLX.cpp: Ditto
62 * platform/graphics/glx/GLContextGLX.h: Ditto.
64 2013-04-11 Anders Carlsson <andersca@apple.com>
66 Implement removing storage area items
67 https://bugs.webkit.org/show_bug.cgi?id=114472
69 Reviewed by Beth Dakin.
71 Export StorageMap::removeItem.
75 2013-04-11 Brendan Long <b.long@cablelabs.com>
77 TextTrackList's .onremovetrack is missing from IDL
78 https://bugs.webkit.org/show_bug.cgi?id=103421
80 Reviewed by Eric Carlson.
82 Fixed test media/track/opera/interfaces/TextTrackList/onremovetrack.html
84 * html/track/TextTrackList.cpp:
85 (TextTrackList::remove):
86 (TextTrackList::scheduleRemoveTrackEvent):
87 * html/track/TextTrackList.h:
89 * html/track/TextTrackList.idl:
91 2013-04-11 Alberto Garcia <agarcia@igalia.com>
93 [BlackBerry] Upstream the filesystem code
94 https://bugs.webkit.org/show_bug.cgi?id=114437
98 This patch contains contributions from many members of the
99 BlackBerry WebKit team.
101 * platform/blackberry/AsyncFileWriterBlackBerry.cpp: Added.
103 (WebCore::AsyncFileWriterBlackBerry::write):
104 * platform/blackberry/AsyncFileWriterBlackBerry.h: Added.
106 (WTF::BlackBerry::Platform::WebFileWriter):
108 * platform/blackberry/DOMFileSystemBlackBerry.cpp: Added.
110 (WebCore::DOMFileSystemBase::createFileSystemURL):
111 (WebCore::DOMFileSystemBase::crackFileSystemURL):
112 (WebCore::DOMFileSystemBase::supportsToURL):
113 (WebCore::DOMFileSystemBase::isValidType):
114 * platform/blackberry/LocalFileSystemBlackBerry.cpp: Added.
116 (WebCore::fileSystemTypeString):
117 (WebCore::openFileSystem):
118 (WebCore::LocalFileSystem::deleteFileSystem):
119 (WebCore::LocalFileSystem::readFileSystem):
120 (WebCore::LocalFileSystem::requestFileSystem):
121 * platform/blackberry/PlatformAsyncFileSystemCallbacks.cpp: Added.
123 (WebCore::PlatformAsyncFileSystemCallbacks::notifyOpenFileSystem):
124 (WebCore::PlatformAsyncFileSystemCallbacks::notifySucceed):
125 (WebCore::PlatformAsyncFileSystemCallbacks::notifyFail):
126 (WebCore::getFileMetadata):
127 (WebCore::PlatformAsyncFileSystemCallbacks::notifyReadMetadata):
128 (WebCore::PlatformAsyncFileSystemCallbacks::notifyCreateSnapshotFileAndReadMetadata):
129 (WebCore::PlatformAsyncFileSystemCallbacks::notifyReadDirectory):
130 (WebCore::PlatformAsyncFileSystemCallbacks::notifyCreateFileWriter):
131 (WebCore::PlatformAsyncFileSystemCallbacks::createAsyncFileSystem):
132 (WebCore::PlatformAsyncFileSystemCallbacks::createAsyncFileWriter):
133 (WebCore::PlatformAsyncFileSystemCallbacks::deleteMe):
134 * platform/blackberry/PlatformAsyncFileSystemCallbacks.h: Added.
136 * platform/blackberry/PlatformBlob.cpp: Added.
138 (WebCore::PlatformBlob::nextDataItem):
139 * platform/blackberry/PlatformBlob.h: Added.
141 * platform/blackberry/PlatformFileWriterClient.cpp: Added.
143 (WebCore::PlatformFileWriterClient::notifyWrite):
144 (WebCore::PlatformFileWriterClient::notifyTruncate):
145 (WebCore::PlatformFileWriterClient::notifyFail):
146 * platform/blackberry/PlatformFileWriterClient.h: Added.
149 (WTF::WebCore::PlatformFileWriterClient):
150 * platform/blackberry/WorkerAsyncFileSystemBlackBerry.cpp: Added.
152 (WebCore::WorkerAsyncFileSystemBlackBerry::WorkerAsyncFileSystemBlackBerry):
153 (WebCore::WorkerAsyncFileSystemBlackBerry::~WorkerAsyncFileSystemBlackBerry):
154 (WebCore::WorkerAsyncFileSystemBlackBerry::waitForOperationToComplete):
155 (WebCore::WorkerAsyncFileSystemBlackBerry::openFileSystemOnMainThread):
156 (WebCore::WorkerAsyncFileSystemBlackBerry::deleteFileSystemOnMainThread):
157 (WebCore::WorkerAsyncFileSystemBlackBerry::moveOnMainThread):
158 (WebCore::WorkerAsyncFileSystemBlackBerry::copyOnMainThread):
159 (WebCore::WorkerAsyncFileSystemBlackBerry::removeOnMainThread):
160 (WebCore::WorkerAsyncFileSystemBlackBerry::removeRecursivelyOnMainThread):
161 (WebCore::WorkerAsyncFileSystemBlackBerry::readMetadataOnMainThread):
162 (WebCore::WorkerAsyncFileSystemBlackBerry::createFileOnMainThread):
163 (WebCore::WorkerAsyncFileSystemBlackBerry::createDirectoryOnMainThread):
164 (WebCore::WorkerAsyncFileSystemBlackBerry::fileExistsOnMainThread):
165 (WebCore::WorkerAsyncFileSystemBlackBerry::directoryExistsOnMainThread):
166 (WebCore::WorkerAsyncFileSystemBlackBerry::readDirectoryOnMainThread):
167 (WebCore::WorkerAsyncFileSystemBlackBerry::createWriterOnMainThread):
168 (WebCore::WorkerAsyncFileSystemBlackBerry::createSnapshotFileAndReadMetadataOnMainThread):
169 (WebCore::WorkerAsyncFileSystemBlackBerry::openFileSystem):
170 (WebCore::WorkerAsyncFileSystemBlackBerry::deleteFileSystem):
171 (WebCore::WorkerAsyncFileSystemBlackBerry::move):
172 (WebCore::WorkerAsyncFileSystemBlackBerry::copy):
173 (WebCore::WorkerAsyncFileSystemBlackBerry::remove):
174 (WebCore::WorkerAsyncFileSystemBlackBerry::removeRecursively):
175 (WebCore::WorkerAsyncFileSystemBlackBerry::readMetadata):
176 (WebCore::WorkerAsyncFileSystemBlackBerry::createFile):
177 (WebCore::WorkerAsyncFileSystemBlackBerry::createDirectory):
178 (WebCore::WorkerAsyncFileSystemBlackBerry::fileExists):
179 (WebCore::WorkerAsyncFileSystemBlackBerry::directoryExists):
180 (WebCore::WorkerAsyncFileSystemBlackBerry::readDirectory):
181 (WebCore::WorkerAsyncFileSystemBlackBerry::createWriter):
182 (WebCore::WorkerAsyncFileSystemBlackBerry::createSnapshotFileAndReadMetadata):
183 * platform/blackberry/WorkerAsyncFileSystemBlackBerry.h: Added.
185 (WorkerAsyncFileSystemBlackBerry):
186 (WebCore::WorkerAsyncFileSystemBlackBerry::create):
187 * platform/blackberry/WorkerAsyncFileWriterBlackBerry.cpp: Added.
189 (WebCore::WorkerAsyncFileWriterBlackBerry::writeOnMainThread):
190 (WebCore::WorkerAsyncFileWriterBlackBerry::truncateOnMainThread):
191 (WebCore::WorkerAsyncFileWriterBlackBerry::abortOnMainThread):
192 (WebCore::WorkerAsyncFileWriterBlackBerry::write):
193 (WebCore::WorkerAsyncFileWriterBlackBerry::truncate):
194 (WebCore::WorkerAsyncFileWriterBlackBerry::abort):
195 (WebCore::WorkerAsyncFileWriterBlackBerry::waitForOperationToComplete):
196 (WebCore::WorkerAsyncFileWriterBlackBerry::platformWriterClient):
197 * platform/blackberry/WorkerAsyncFileWriterBlackBerry.h: Added.
199 * platform/blackberry/WorkerPlatformAsyncFileSystemCallbacks.cpp: Added.
201 (WebCore::performTaskOnMainThread):
202 (WebCore::postTaskToMainThread):
203 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyStop):
204 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyOpenFileSystem):
205 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifySucceed):
206 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyFail):
207 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyReadMetadata):
208 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyReadDirectory):
209 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyCreateFileWriter):
210 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::createAsyncFileSystem):
211 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::createAsyncFileWriter):
212 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::deleteMe):
213 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::postTaskToWorkerThread):
214 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyOpenFileSystemOnWorkerThread):
215 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifySucceedOnWorkerThread):
216 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyFailOnWorkerThread):
217 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyReadMetadataOnWorkerThread):
218 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyReadDirectoryEntryOnWorkerThread):
219 (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyCreateFileWriterOnWorkerThread):
220 * platform/blackberry/WorkerPlatformAsyncFileSystemCallbacks.h: Added.
222 * platform/blackberry/WorkerPlatformFileWriterClient.cpp: Added.
224 (WebCore::WorkerPlatformFileWriterClient::notifyWriteOnWorkerThread):
225 (WebCore::WorkerPlatformFileWriterClient::notifyFailOnWorkerThread):
226 (WebCore::WorkerPlatformFileWriterClient::notifyTruncateOnWorkerThread):
227 (WebCore::WorkerPlatformFileWriterClient::notifyWrite):
228 (WebCore::WorkerPlatformFileWriterClient::notifyTruncate):
229 (WebCore::WorkerPlatformFileWriterClient::notifyFail):
230 (WebCore::WorkerPlatformFileWriterClient::postTaskToWorkerThreadIfNeeded):
231 * platform/blackberry/WorkerPlatformFileWriterClient.h: Added.
234 (WTF::WebCore::WorkerPlatformFileWriterClient):
236 2013-04-11 Ryosuke Niwa <rniwa@webkit.org>
238 Mac Lion build fix attempt after r148197.
240 * page/scrolling/mac/ScrollingStateNodeMac.mm:
242 2013-04-11 Alexey Proskuryakov <ap@apple.com>
244 <rdar://problem/10416316> [Mac] WebSocket doesn't work with authenticating proxies
245 https://bugs.webkit.org/show_bug.cgi?id=114464
247 Reviewed by Brady Eidson.
249 * platform/mac/WebCoreSystemInterface.h:
250 * platform/mac/WebCoreSystemInterface.mm:
251 Updated for new wkCopyCONNECTProxyResponse signature.
253 * platform/network/cf/SocketStreamHandleCFNet.cpp:
254 (WebCore::SocketStreamHandle::executePACFileURL): Fixed a typo in a comment.
255 (WebCore::SocketStreamHandle::addCONNECTCredentials): Don't crash even if the rest
256 of the fix didn't work (which would be the case on some OS versions).
257 (WebCore::SocketStreamHandle::readStreamCallback): Replaced most breaks with returns,
258 because breaks were confusing in such a huge switch. Changed null proxyResponse
259 to not be treated as authentication success, because it's not. Merged two parts
260 of WaitingForConnect state handling for clarity.
261 (WebCore::SocketStreamHandle::writeStreamCallback): Don't blindly assume that we
262 can start WebSocket handshake after kCFStreamEventCanAcceptBytes. Perhaps it's
263 nothing but a failed CONNECT, and a read callback still needs to send authentication.
264 Without this, establishing connections was flaky. Added a check for Closed state,
265 matching read callback.
267 2013-04-11 Sukolsak Sakshuwong <sukolsak@gmail.com>
269 MutationRecord is not exposed
270 https://bugs.webkit.org/show_bug.cgi?id=114288
272 Reviewed by Darin Adler.
274 Expose MutationRecord on DOMWindow. This patch is copied from a patch
275 by Adam Klein. https://codereview.chromium.org/13861028
277 Test: fast/dom/MutationObserver/mutation-record-constructor.html
279 * page/DOMWindow.idl:
281 2013-04-11 Beth Dakin <bdakin@apple.com>
283 Cannot scroll to footer on a page with overflow:hidden on the body
284 https://bugs.webkit.org/show_bug.cgi?id=114462
286 <rdar://problem/13530042>
288 Reviewed by Simon Fraser.
290 Add a new scenario in which we want to overrideHidden -- whenever we are the
291 mainFrame and there is a header or footer.
293 * page/FrameView.cpp:
294 (WebCore::FrameView::applyOverflowToViewport):
296 2013-04-11 Commit Queue <rniwa@webkit.org>
298 Unreviewed, rolling out r148034, r148052, r148097, and
300 http://trac.webkit.org/changeset/148034
301 http://trac.webkit.org/changeset/148052
302 http://trac.webkit.org/changeset/148097
303 http://trac.webkit.org/changeset/148194
304 https://bugs.webkit.org/show_bug.cgi?id=114463
306 broke mutiresolution favicons, among other things (Requested
307 by thorton on #webkit).
309 * loader/icon/IconDatabase.cpp:
310 (WebCore::IconDatabase::setIconDataForIconURL):
311 * loader/icon/IconDatabase.h:
313 * loader/icon/IconDatabaseBase.h:
314 * loader/icon/IconRecord.cpp:
315 * loader/icon/IconRecord.h:
318 2013-04-11 ChangSeok Oh <changseok.oh@collabora.com>
320 [GTK][AC] Implement GraphicsLayerClutter::moveOrCopyAnimations
321 https://bugs.webkit.org/show_bug.cgi?id=114019
323 Reviewed by Gustavo Noronha Silva.
325 Fill moveOrCopyAnimations that is based on Mac port implementation.
327 Tests: animations/3d/change-transform-in-end-event.html
328 animations/3d/transform-origin-vs-functions.html
329 compositing/animation/state-at-end-event-transform-layer.html
331 * platform/graphics/clutter/GraphicsLayerClutter.cpp:
332 (WebCore::GraphicsLayerClutter::moveOrCopyLayerAnimation):
334 (WebCore::GraphicsLayerClutter::moveOrCopyAnimations):
335 * platform/graphics/clutter/GraphicsLayerClutter.h:
337 2013-04-11 Anders Carlsson <andersca@apple.com>
339 Implement StorageManager::getValues
340 https://bugs.webkit.org/show_bug.cgi?id=114461
342 Reviewed by Beth Dakin.
344 Expose the item hash map.
346 * storage/StorageMap.h:
347 (WebCore::StorageMap::items):
349 2013-04-11 Eli Fidler <efidler@blackberry.com>
351 [BlackBerry] Use the platform list of languages with fonts instead of hardcoding
352 https://bugs.webkit.org/show_bug.cgi?id=114452
354 Reviewed by Rob Buis.
357 Internally reviewed by Jeff Rogers
359 No functional change, but platform font changes won't need a WebKit change
362 * page/blackberry/SettingsBlackBerry.cpp:
363 (WebCore::Settings::initializeDefaultFontFamilies):
365 2013-04-11 Dirk Schulze <krit@webkit.org>
367 [CSS Shaders] Parse parameters descriptor
368 https://bugs.webkit.org/show_bug.cgi?id=114455
370 Reviewed by Dean Jackson.
372 Add support for the 'parameters' descriptor in the filter at-rule to support
373 parameterization of CSS Shaders.
375 https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html#custom-filter-parameters
377 Tests: css3/filters/custom-with-at-rule-syntax/parsing-parameters-property-invalid.html
378 css3/filters/custom-with-at-rule-syntax/parsing-parameters-property-valid.html
380 * css/CSSComputedStyleDeclaration.cpp:
381 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
382 * css/CSSParser.cpp: Added 'parameters' property and fail parsing if not inside
384 (WebCore::CSSParser::parseValue):
385 (WebCore::CSSParser::parseFilterRuleParameters): New helper function to verify
389 * css/CSSProperty.cpp:
390 (WebCore::CSSProperty::isInheritedProperty):
391 * css/CSSPropertyNames.in: Added new property name 'parameters'.
392 * css/StyleResolver.cpp:
393 (WebCore::StyleResolver::applyProperty):
395 2013-04-11 Arunprasad Rajkumar <arunprasadr@nds.com>
397 Default Implementation of toString for NPObject shouldn't return NPClass & NPObject address as String
398 https://bugs.webkit.org/show_bug.cgi?id=114450
400 Reviewed by Anders Carlsson.
402 * bridge/c/c_instance.cpp:
403 (JSC::Bindings::CInstance::stringValue):
405 2013-04-11 Robert Hogan <robert@webkit.org>
407 REGRESSION (142152): ensure we skip past out-of-flow objects when detecting whitespace to ignore after leading empty inlines
408 https://bugs.webkit.org/show_bug.cgi?id=114311
410 Reviewed by Emil A Eklund.
412 When we hit an empty inline in line layout and try to detect whether it has any whitespace after it that we ought to ignore, then
413 we need to skip past out-of-flow and floating objects when looking for that whitespace. Failure to do so will result in us
414 adding the width from the first space we encounter to our line width and over-estimating the real width of the line.
416 We're hitting this bug now because we have broadened the category of empty inlines that get lineboxes so we go into line layout
417 and have to deal with them and their subsequent whitespace there. Previously this sort of whitespace would have been simply
418 consumed by |skipLeadingWhitespace|.
420 Test: fast/inline/out-of-flow-objects-and-whitespace-after-empty-inline.html
422 * rendering/RenderBlockLineLayout.cpp:
423 (WebCore::shouldSkipWhitespaceAfterStartObject):
425 2013-04-11 Ryosuke Niwa <rniwa@webkit.org>
427 Autocorrected text doesn't have a marker of type autocorrected
428 https://bugs.webkit.org/show_bug.cgi?id=114337
430 Reviewed by Darin Adler.
432 The bug was caused by markAndReplaceFor's text replacement errornously assuming that there are
433 no other text checking result starting at the same offset. That resulted in us adjusting location
434 offsets of the subsequent results pointing at the replaced text, hit an assertion, and blow up.
436 Fixed the bug by skipping all remaining results for the replaced text since they're no longer
439 Tests: Existing autocorection tests have been updated to assert new behavior.
441 * editing/Editor.cpp:
442 (WebCore::Editor::markAndReplaceFor):
444 2013-04-11 Michelangelo De Simone <michelangelo@webkit.org>
446 [CSS Shaders] Parse the geometry descriptor
447 https://bugs.webkit.org/show_bug.cgi?id=110815
449 Added initial parsing for the "geometry" descriptor, as per specification:
450 https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html#geometry
451 This descriptor allows to specify the mesh geometry for custom filters.
453 Reviewed by Dirk Schulze.
455 Tests: css3/filters/custom-with-at-rule-syntax/parsing-geometry-property-invalid.html
456 css3/filters/custom-with-at-rule-syntax/parsing-geometry-property-valid.html
458 * css/CSSComputedStyleDeclaration.cpp:
459 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
461 (WebCore::CSSParser::parseValue):
462 (WebCore::CSSParser::parseGeometry): New method that parses the geometry
466 * css/CSSProperty.cpp:
467 (WebCore::CSSProperty::isInheritedProperty):
468 * css/CSSPropertyNames.in: Added conditional "geometry" property.
469 * css/CSSValueKeywords.in: Added conditional "attached" value keyword; detached
472 2013-04-11 Anders Carlsson <andersca@apple.com>
474 Make StorageAreaMap dispatch session storage events
475 https://bugs.webkit.org/show_bug.cgi?id=114454
477 Reviewed by Beth Dakin.
479 Export storage symbols and headers needed by WebKit2.
482 * WebCore.xcodeproj/project.pbxproj:
484 2013-04-11 Allan Sandfeld Jensen <allan.jensen@digia.com>
486 handleMouseMoveEvent should let hit-testing hit-test scrollbars
487 https://bugs.webkit.org/show_bug.cgi?id=114430
489 Reviewed by Antonio Gomes.
491 Allow hit-testing to hit-test frame scrollbars so handleMouseMoveEvent
492 does not have to do it itself.
494 * page/EventHandler.cpp:
495 (WebCore::EventHandler::handleMouseMoveEvent):
497 2013-04-11 Brian Holt <brian.holt@samsung.com>
499 [Gtk] Combo boxes should be arrow-out-of-able similar to list boxes when caret-browsing is enabled.
500 https://bugs.webkit.org/show_bug.cgi?id=76796
502 Reviewed by Chris Fleizach.
504 When using caret-browsing with the right and left arrows, the
505 behaviour of menuLists should be the same as listBoxes. This means
506 not default-handling the event and passing it up the stack instead.
508 * html/HTMLSelectElement.cpp:
509 (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
511 2013-04-11 Alexey Proskuryakov <ap@apple.com>
513 Remove some ResourceHandle.h includes
514 https://bugs.webkit.org/show_bug.cgi?id=114416
516 Reviewed by Ryosuke Niwa.
518 * loader/CrossOriginAccessControl.h:
519 * loader/CrossOriginPreflightResultCache.h:
520 These files don't need ResourceHandle.h, just ResourceHandleTypes.h.
522 * loader/TextTrackLoader.cpp:
523 * loader/ThreadableLoader.h:
524 * loader/appcache/ApplicationCacheGroup.h:
525 * loader/cache/MemoryCache.h:
526 * loader/mac/ResourceLoaderMac.mm:
528 * platform/network/AuthenticationChallengeBase.cpp:
529 * platform/network/cf/CookieJarCFNet.cpp:
530 * platform/network/cf/ResourceRequestCFNet.cpp:
531 * xml/XSLTProcessorLibxslt.cpp:
532 * xml/parser/XMLDocumentParser.cpp:
533 * xml/parser/XMLDocumentParserLibxml2.cpp:
534 Just straightforward removal of includes.
536 2013-04-04 Allan Sandfeld Jensen <allan.jensen@digia.com>
538 Use CSS4 image-rendering to determing image scaling quality
539 https://bugs.webkit.org/show_bug.cgi?id=113405
541 Reviewed by Simon Fraser.
543 Implement the new CSS4 image-rendering property values.
545 Image scaling now uses low-quality (pixelated) scaling for
546 crisp-edges, pixelated and optimizeSpeed values, and always
547 use high quality (smooth) scaling for -webkit-smooth and
548 optimizeQuality. The latter can be used to disable low quality
549 scaling during CSS animations or live resizing.
551 The new values are protected with a new CSS4_IMAGES feature, but
552 the crisp-edge value has been introduced before to displace the
553 deprecated -webkit-optimize-contrast value, and optimizeSpeed
554 and optimizeQuality values are supported for SVG compatibility.
557 (WebCore::isValidKeywordPropertyAndValue):
558 * css/CSSPrimitiveValueMappings.h:
559 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
560 (WebCore::CSSPrimitiveValue::operator EImageRendering):
561 * css/CSSValueKeywords.in:
562 * rendering/RenderBoxModelObject.cpp:
563 (WebCore::ImageQualityController::shouldPaintAtLowQuality):
564 * rendering/RenderHTMLCanvas.cpp:
565 (WebCore::RenderHTMLCanvas::paintReplaced):
566 * rendering/style/RenderStyleConstants.h:
568 2013-04-11 Adenilson Cavalcanti <cavalcantii@gmail.com>
570 Build fix: use of uninitialized variable in ScrollingStateTree
571 https://bugs.webkit.org/show_bug.cgi?id=114443
573 Reviewed by Anders Carlsson.
575 Initialize pointer to zero before use, fixes build.
576 No new tests, no changes on behavior.
578 * page/scrolling/ScrollingStateTree.cpp:
579 (WebCore::ScrollingStateTree::attachNode):
581 2013-04-11 Dirk Schulze <krit@webkit.org>
583 [CSS Shaders] Parse mix descriptor
584 https://bugs.webkit.org/show_bug.cgi?id=114414
586 Reviewed by Antti Koivisto.
588 Add support for the 'mix' descriptor in the filter at-rule to support blend modes
589 and composite operators in CSS Shaders.
590 Each pixel in the fragment shader will be blended and composited with the
591 backdrop by taking these values into account.
593 https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html#custom-filter-mix
595 Tests: css3/filters/custom-with-at-rule-syntax/parsing-mix-property-invalid.html
596 css3/filters/custom-with-at-rule-syntax/parsing-mix-property-valid.html
598 * css/CSSComputedStyleDeclaration.cpp:
599 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
600 * css/CSSParser.cpp: Added 'mix' property and fail parsing if not inside
602 (WebCore::CSSParser::parseValue):
603 (WebCore::CSSParser::parseFilterRuleMix): New helper function to verify
607 * css/CSSProperty.cpp:
608 (WebCore::CSSProperty::isInheritedProperty):
609 * css/CSSPropertyNames.in: Added new property name 'mix'.
610 * css/StyleResolver.cpp:
611 (WebCore::StyleResolver::applyProperty):
613 2013-04-11 Zalan Bujtas <zalan@apple.com>
615 Parent box with background-size auto and gradient image does not get properly repainted when child box is resized.
616 https://bugs.webkit.org/show_bug.cgi?id=114424
618 Reviewed by Antti Koivisto.
620 Initiate full repaint on fill layer, when the image is generated and the background
621 property defines auto size.
622 http://www.w3.org/TR/css3-background/#background-size
623 'If the image has neither an intrinsic width nor an intrinsic height, its size is determined as for 'contain'.'
625 Extended fast/repaint/background-shorthand-with-gradient-and-height-changes.html
626 to cover this case too.
628 * rendering/RenderObject.cpp:
629 (WebCore::mustRepaintFillLayers):
631 2013-04-11 ChangSeok Oh <changseok.oh@collabora.com>
633 [GTK][AC] use a smart pointer for GList and ClutterCanvas
634 https://bugs.webkit.org/show_bug.cgi?id=114057
636 Reviewed by Gustavo Noronha Silva.
638 We can make simple code & prevent possible memory leak by using a proper smart pointer.
639 Especially if we get children by clutter_actor_get_children, we should free it after using.
641 No functionality changed.
643 * platform/graphics/clutter/GraphicsLayerActor.cpp:
644 (graphicsLayerActorUpdateTexture):
645 (graphicsLayerActorRemoveAll):
647 2013-04-11 Arvid Nilsson <anilsson@rim.com>
649 [BlackBerry][CSS Filters] Blur filter fails to recompute blur size when layer size changes
650 https://bugs.webkit.org/show_bug.cgi?id=114272
652 Reviewed by Rob Buis.
654 Blur appeared blocky or pixelated when surface changed size after
655 creating the filter actions. The initial image size was used to
656 determine the blur size (expressed in texture coordinate system).
657 Fixed by recomputing the blur size when the surface size changes, using
658 a new Uniform1f subclass that can use a functor to compute the uniform
661 This fixes css3/filters/effect-blur-hw.html. This can only be verified
662 by manual inspection because the BlackBerry port is not currently using
667 * platform/graphics/blackberry/LayerFilterRenderer.cpp:
670 (WebCore::SurfaceFunctor::SurfaceFunctor):
671 (InverseSurfaceWidth):
672 (WebCore::InverseSurfaceWidth::InverseSurfaceWidth):
673 (WebCore::InverseSurfaceWidth::operator()):
674 (InverseSurfaceHeight):
675 (WebCore::InverseSurfaceHeight::InverseSurfaceHeight):
676 (WebCore::LayerFilterRenderer::actionsForOperations):
677 * platform/graphics/blackberry/LayerFilterRenderer.h:
680 (Uniform1fWithFunctor):
681 (WebCore::Uniform1fWithFunctor::create):
682 (WebCore::Uniform1fWithFunctor::Uniform1fWithFunctor):
683 (WebCore::Uniform1fWithFunctor::apply):
684 (WebCore::Uniform1f::createWithFunctor):
686 2013-04-11 Arvid Nilsson <anilsson@rim.com>
688 [BlackBerry] Accelerated compositing debug rectangle incorrectly drawn for layers with surfaces
689 https://bugs.webkit.org/show_bug.cgi?id=114275
691 Reviewed by Carlos Garcia Campos.
693 The drawDebugBorder method was updated to mirror the logic in
694 compositeLayersRecursive, i.e. if we're compositing a surface to the
695 screen, use the transformed bounds stored in the surface. The bounds
696 stored in the layer should only be used when drawing the layer to the
699 Speaking of which, also update the code to skip border drawing when
700 drawing a layer to a surface. Drawing the borders inside the surface
701 would only result in messing up the surface contents, especially when
702 CSS filters like blur were the reason for having a surface in the first
703 place - the border would be blurred and hard to discern.
705 Only manually testable, the debug border is disabled during layout
710 * platform/graphics/blackberry/LayerRenderer.cpp:
711 (WebCore::LayerRenderer::drawDebugBorder):
712 * platform/graphics/blackberry/LayerRendererSurface.cpp:
713 (WebCore::LayerRendererSurface::drawRect):
714 (WebCore::LayerRendererSurface::transformedBounds): Added.
716 * platform/graphics/blackberry/LayerRendererSurface.h:
717 (LayerRendererSurface):
719 2013-04-11 Arvid Nilsson <anilsson@rim.com>
721 [BlackBerry] Compiler warning in LayerWebKitThread.cpp
722 https://bugs.webkit.org/show_bug.cgi?id=114277
724 Reviewed by Carlos Garcia Campos.
726 All the relevant WTF::Vector APIs use size_t, storing the position in
727 an int resulted in a compiler warning. Fixed by switching to size_t.
729 No change in behavior, no new tests.
733 * platform/graphics/blackberry/LayerWebKitThread.cpp:
734 (WebCore::LayerWebKitThread::remove):
735 (WebCore::LayerWebKitThread::replaceSublayer):
737 2013-04-11 Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com>
739 [CoordinatedGraphics] Use ScrollingStateTree to handle fixed elements positioning while scrolling
740 https://bugs.webkit.org/show_bug.cgi?id=114353
742 Reviewed by Noam Rosenthal.
744 ScrollingCoordinatorCoordinatedGraphics should implement threaded scrolling interface and
745 re-use threaded scrolling approach (ScrollingStateTree and ViewportConstraints) to handle
746 fixed/sticky elements positioning while scrolling. The rationals are below.
748 Before the change ScrollingCoordinatorCoordinatedGraphics was implementing Chromium-specific
749 interface which is going to be removed eventually as there is no ScrollingCoordinatorChromium
752 Tested by existing manual tests (fixed-position.html for example.
756 Included ScrollingStateTree files.
758 * page/scrolling/ScrollingStateFixedNode.cpp:
759 * page/scrolling/ScrollingStateFixedNode.h:
760 * page/scrolling/ScrollingStateNode.cpp:
761 * page/scrolling/ScrollingStateNode.h:
762 * page/scrolling/ScrollingStateScrollingNode.cpp:
763 * page/scrolling/ScrollingStateScrollingNode.h:
764 * page/scrolling/ScrollingStateStickyNode.cpp:
765 * page/scrolling/ScrollingStateStickyNode.h:
766 * page/scrolling/ScrollingStateTree.cpp:
767 * page/scrolling/ScrollingStateTree.h:
768 Removed ENABLE(THREADED_SCROLLING) code guards.
770 * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp:
771 (WebCore::ScrollingCoordinatorCoordinatedGraphics::ScrollingCoordinatorCoordinatedGraphics):
772 (WebCore::ScrollingCoordinatorCoordinatedGraphics::~ScrollingCoordinatorCoordinatedGraphics):
774 (WebCore::ScrollingCoordinatorCoordinatedGraphics::attachToStateTree):
775 (WebCore::ScrollingCoordinatorCoordinatedGraphics::detachFromStateTree):
776 (WebCore::ScrollingCoordinatorCoordinatedGraphics::clearStateTree):
777 (WebCore::ScrollingCoordinatorCoordinatedGraphics::updateViewportConstrainedNode):
778 * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.h:
779 ScrollingCoordinatorCoordinatedGraphics is using threaded scrolling approach to handle fixed
780 elements positioning while scrolling.
783 (ScrollingCoordinatorCoordinatedGraphics):
784 * page/scrolling/coordinatedgraphics/ScrollingStateNodeCoordinatedGraphics.cpp: Added.
786 (WebCore::ScrollingStateNode::platformScrollLayer):
787 (WebCore::ScrollingStateNode::setScrollPlatformLayer):
788 (WebCore::ScrollingStateNode::setScrollLayer):
789 * page/scrolling/coordinatedgraphics/ScrollingStateScrollingNodeCoordinatedGraphics.cpp: Added.
791 (WebCore::ScrollingStateScrollingNode::counterScrollingPlatformLayer):
792 (WebCore::ScrollingStateScrollingNode::setCounterScrollingLayer):
794 2013-04-11 Allan Sandfeld Jensen <allan.jensen@digia.com>
796 [Qt] EventHandler should handle Space and BackSpace
797 https://bugs.webkit.org/show_bug.cgi?id=114428
799 Reviewed by Jocelyn Turcotte.
801 Enable default space-handling for Qt.
803 * page/EventHandler.cpp:
805 2013-04-11 Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
807 IconDatabase: Simplify boolean logic in assertion.
808 https://bugs.webkit.org/show_bug.cgi?id=114425
810 Reviewed by Andreas Kling.
812 Follow-up to r148097; drop the overzealous use of !! to turn a
813 PassRefPtr into a boolean.
815 * loader/icon/IconDatabase.cpp:
816 (WebCore::IconDatabase::updateIconRecord):
818 2013-04-11 Arvid Nilsson <anilsson@rim.com>
820 [BlackBerry] LayerTexture refactoring
821 https://bugs.webkit.org/show_bug.cgi?id=114276
823 Reviewed by Carlos Garcia Campos.
825 Remove the GpuHandle and HostType typedefs from LayerTexture, they
826 don't make any sense now that we removed the Skia code paths. With Skia
827 they used to be an OpenGL texture ID and an SkBitmap respectively, but
828 now it's just BlackBerry::Platform::Graphics::Buffer all around.
830 This allows us to rename textureId() into buffer() which is more to the
831 point. The texture ID concept is now up for grabs and can be used to
832 consolidate all the various code for extracting an OpenGL texture from
833 a BlackBerry::Platform::Graphics::Buffer. This opportunity is seized in
834 LayerTexture::platformTexture(), a name which makes more sense than
835 textureId() for anyone familiar with the GraphicsContext3D code. We can
836 also leverage the Platform3DObject typedef to avoid including gl2.h.
838 The vertex attribute state was getting trampled when interacting with
839 BlackBerry::Platform::Graphics in the LayerFilterRenderer. Some
840 additional GL state save/restore incantations when accessing the OpenGL
841 texture for a LayerTexture in the new LayerTexture::platformTexture()
842 method fixes various CSS Filters test cases.
844 Since we removed the Skia integration from LayerTiler, nobody cares
845 about the dirty rect, tile rect or opaqueness of the tile contents. So
846 remove those parameters from the updateContents code path.
848 No change in behavior except for fixing CSS Filters tests like
849 css3/filters/effect-blur-hw.html. This can only be verified by manually
850 looking at the tests, we don't have pixel test support to catch this
855 * platform/graphics/blackberry/LayerCompositingThread.cpp:
856 (WebCore::LayerCompositingThread::drawSurface):
857 * platform/graphics/blackberry/LayerFilterRenderer.cpp:
858 (WebCore::LayerFilterRenderer::ping):
859 (WebCore::LayerFilterRenderer::pong):
860 (WebCore::LayerFilterRenderer::pushSnapshot):
861 (WebCore::LayerFilterRenderer::popSnapshot):
862 (WebCore::LayerFilterRenderer::applyActions):
863 * platform/graphics/blackberry/LayerRenderer.cpp:
864 (WebCore::LayerRenderer::useSurface):
865 * platform/graphics/blackberry/LayerTexture.cpp:
866 (WebCore::LayerTexture::LayerTexture):
867 (WebCore::LayerTexture::updateContents):
868 (WebCore::LayerTexture::setContentsToColor):
869 (WebCore::LayerTexture::protect):
870 (WebCore::LayerTexture::platformTexture):
872 * platform/graphics/blackberry/LayerTexture.h:
873 (WebCore::LayerTexture::isDirty):
874 (WebCore::LayerTexture::buffer):
876 (WebCore::LayerTexture::setBuffer):
877 * platform/graphics/blackberry/LayerTile.cpp:
878 (WebCore::LayerTile::setContents):
879 (WebCore::LayerTile::updateContents):
880 * platform/graphics/blackberry/LayerTile.h:
881 (WebCore::LayerTile::hasTexture):
883 * platform/graphics/blackberry/LayerTiler.cpp:
884 (WebCore::LayerTiler::updateTextureContentsIfNeeded):
885 (WebCore::LayerTiler::uploadTexturesIfNeeded):
886 (WebCore::LayerTiler::performTileJob):
887 (WebCore::LayerTiler::drawTile):
888 * platform/graphics/blackberry/LayerTiler.h:
889 (WebCore::LayerTiler::TextureJob::TextureJob):
890 (WebCore::LayerTiler::TextureJob::setContents):
891 (WebCore::LayerTiler::TextureJob::updateContents):
894 * platform/graphics/blackberry/TextureCacheCompositingThread.cpp:
895 (WebCore::TextureCacheCompositingThread::createBuffer):
896 (WebCore::TextureCacheCompositingThread::collectGarbage):
897 (WebCore::TextureCacheCompositingThread::install):
898 (WebCore::TextureCacheCompositingThread::resizeTexture):
899 (WebCore::TextureCacheCompositingThread::evict):
900 (WebCore::TextureCacheCompositingThread::textureForContents):
901 (WebCore::TextureCacheCompositingThread::updateContents):
902 * platform/graphics/blackberry/TextureCacheCompositingThread.h:
903 (TextureCacheCompositingThread):
904 (WebCore::TextureCacheCompositingThread::ZombieTexture::ZombieTexture):
907 2013-04-11 Alberto Garcia <agarcia@igalia.com>
909 [BlackBerry] RenderThemeBlackBerry: upstream missing code
910 https://bugs.webkit.org/show_bug.cgi?id=114343
912 Reviewed by Xan Lopez.
914 Add implementations of sliderTickSize() and
915 sliderTickOffsetFromTrackCenter(), as well as a missing header.
917 * platform/blackberry/RenderThemeBlackBerry.cpp:
919 (WebCore::RenderThemeBlackBerry::sliderTickSize):
920 (WebCore::RenderThemeBlackBerry::sliderTickOffsetFromTrackCenter):
921 * platform/blackberry/RenderThemeBlackBerry.h:
922 (RenderThemeBlackBerry):
924 2013-04-11 Allan Sandfeld Jensen <allan.jensen@digia.com>
926 HitTestRequest::AllowFrameScrollbars does not test main frame scrollbar
927 https://bugs.webkit.org/show_bug.cgi?id=112563
929 Reviewed by Antonio Gomes.
931 Move the frame scrollbar testing from RenderPart to RenderView, so that it is
932 tested by all frame and not just child frames. At the same time remove the
933 main frame test from the one current callsite using the option.
935 Tested by fast/events/touch/gesture/gesture-scrollbar.html.
937 * page/EventHandler.cpp:
938 (WebCore::EventHandler::handleGestureEvent):
939 * rendering/RenderPart.cpp:
940 (WebCore::RenderPart::nodeAtPoint):
941 * rendering/RenderView.cpp:
942 (WebCore::RenderView::hitTest):
944 2013-04-11 Rune Lillesveen <rune@opera.com>
946 Incorrect evaluation of resolution media queries
947 https://bugs.webkit.org/show_bug.cgi?id=114029
949 Reviewed by Kenneth Rohde Christiansen.
951 The implementation used the physical resolution to evaluate the
952 resolution media features. Changed to use the actual CSS resolution,
953 also known as the device-pixel-ratio, instead. Unified the code for
954 evaluating the resolution and device-pixel-ratio media features.
956 No new tests, covered by existing tests.
959 * css/CSSPrimitiveValue.h:
960 (WebCore::CSSPrimitiveValue::isResolution):
961 * css/MediaQueryEvaluator.cpp:
962 (WebCore::evalResolution):
963 (WebCore::device_pixel_ratioMediaFeatureEval):
964 (WebCore::resolutionMediaFeatureEval):
971 * testing/InternalSettings.cpp:
972 (WebCore::InternalSettings::Backup::Backup):
973 (WebCore::InternalSettings::Backup::restoreTo):
974 * testing/InternalSettings.h:
977 * testing/InternalSettings.idl:
979 2013-04-11 Carlos Garcia Campos <cgarcia@igalia.com>
981 FrameLoaderClient::assignIdentifierToInitialRequest() not called for the main resource when loaded from the memory cache
982 https://bugs.webkit.org/show_bug.cgi?id=112418
984 Reviewed by Darin Adler.
986 When the main resource is loaded from the memory cache the
987 response is not added to the ResponseVector of the document
988 loader, so that when committing the provisional load the remaining
989 delegate messages are not called because the ResponseVector of the
990 document loader is empty. When the main resource is loaded from
991 the memory cache, there's no resource loader, and the client is
992 notified about the response received using
993 ResourceLoadNotifier::dispatchDidReceiveResponse() directly
994 instead of ResourceLoadNotifier::didReceiveResponse() which is the
995 one adding the response to the ResponseVector of the document
996 loader. So, the problem can be fixed by adding the response to the
997 ResponseVector before calling dispatchDidReceiveResponse() when
998 loading the main resource without a resource loade
1000 Test: loader/go-back-cached-main-resource.html
1002 * loader/DocumentLoader.cpp:
1003 (WebCore::DocumentLoader::responseReceived):
1005 2013-04-10 Alexey Proskuryakov <ap@apple.com>
1007 Remove some includes of CachedImage.h
1008 https://bugs.webkit.org/show_bug.cgi?id=114411
1010 Reviewed by Dan Bernstein.
1012 * css/CSSCrossfadeValue.h: Initializing CachedResourceHandle with 0 requires a
1013 definition of a class it holds, but default construction does not.
1015 * rendering/RenderImageResource.cpp:
1016 * rendering/RenderImageResource.h:
1017 Moved definitions of virtual functions to a .cpp file. There is no win from having
1018 them inline, and now we don't need CachedImage.h in the header.
1020 * bindings/js/JSNodeCustom.cpp:
1021 * dom/Clipboard.cpp:
1022 (WebCore::Clipboard::Clipboard):
1023 * platform/mac/ClipboardMac.h:
1024 * rendering/InlineFlowBox.cpp:
1025 * rendering/RenderBox.cpp:
1026 * rendering/RenderListItem.cpp:
1027 * rendering/RenderListMarker.cpp:
1028 * rendering/RenderTableCol.cpp:
1029 * rendering/RenderTableRow.cpp:
1030 * rendering/RenderTableSection.cpp:
1031 * svg/graphics/SVGImageCache.cpp:
1032 Removed unnecessary includes.
1034 * platform/mac/PasteboardMac.mm:
1035 * rendering/RenderSnapshottedPlugIn.cpp:
1036 Added ones where they are now necessary.
1038 2013-04-10 No'am Rosenthal <noam@webkit.org>
1040 Allow direct compositing of background images
1041 https://bugs.webkit.org/show_bug.cgi?id=108203
1043 Reviewed by Simon Fraser.
1045 Use setContentsToImage for background images, if the GraphicsLayer has only a background
1046 bitmap image and nothing else. Compute the contentsRect/contentsTileRect from the box model.
1047 Added new properties to GraphicsLayer, contentsTilePhase and contentsTileSize, which controls the "single tile rect",
1048 which allows us to compute the pattern-space transform of a tile, thus allowing background-size
1049 and other characteristics of background images.
1051 This feature is explicitly disabled when there is any composition with a background color or if
1052 there are several background images, as in that case having a single backing store has some
1053 advantages over directly compositing in hardware.
1055 Currently, this feature is disabled for all ports, allowing ports to implement their backend
1056 and decide when to enable it.
1058 Note that RenderBoxModelObject::getGeometryForBackgroundImage crops the contents rect to the
1059 area that contains the tiles, which allows us to assume full tiling in GraphicsLayer.
1060 In this way contentsTileSize/Phase is equivalent to GraphicsContext::drawTiledImage.
1062 Tests: compositing/patterns/direct-pattern-compositing-add-text.html
1063 compositing/patterns/direct-pattern-compositing-change.html
1064 compositing/patterns/direct-pattern-compositing-contain.html
1065 compositing/patterns/direct-pattern-compositing-cover.html
1066 compositing/patterns/direct-pattern-compositing-load.html
1067 compositing/patterns/direct-pattern-compositing-padding.html
1068 compositing/patterns/direct-pattern-compositing-position.html
1069 compositing/patterns/direct-pattern-compositing-rotation.html
1070 compositing/patterns/direct-pattern-compositing-size.html
1071 compositing/patterns/direct-pattern-compositing.html
1073 * platform/graphics/GraphicsLayer.h:
1075 (WebCore::GraphicsLayer::setContentsTileSize):
1076 (WebCore::GraphicsLayer::setContentsTilePhase):
1077 (WebCore::GraphicsLayer::contentsTileSize):
1078 (WebCore::GraphicsLayer::contentsTilePhase):
1079 (WebCore::GraphicsLayer::supportsContentsTiling):
1080 Add a contentsTileRect property that enables tile-repeat of background images.
1082 * rendering/RenderBox.cpp:
1083 (WebCore::RenderBox::imageChanged):
1084 Pass background image changes to the layer backing.
1086 * rendering/RenderBoxModelObject.cpp:
1087 * rendering/RenderBoxModelObject.h:
1088 (WebCore::RenderBoxModelObject::getGeometryForBackgroundImage):
1089 Expose a function that performs the geometry calculations needed to determine
1090 the tileRect for a background image. This function is also responsible
1091 for cropping the contentsRect to fit the area that is drawn into.
1093 * rendering/RenderLayerBacking.h:
1094 * rendering/RenderLayerBacking.cpp:
1095 (WebCore::RenderLayerBacking::contentChanged):
1096 (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
1097 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1098 (WebCore::RenderLayerBacking::updateDirectlyCompositedContents):
1099 (WebCore::RenderLayerBacking::resetContentsRect):
1100 (WebCore::hasBoxDecorationsOrBackgroundImage):
1101 (WebCore::RenderLayerBacking::updateDirectlyCompositedBackgroundColor):
1102 (WebCore::canCreateTiledImage):
1103 (WebCore::RenderLayerBacking::updateDirectlyCompositedBackgroundImage):
1104 (WebCore::backgroundRectForBox):
1105 Allow background images to be directly composited if conditions allow (see bug description).
1107 2013-04-10 Patrick Gansterer <paroga@webkit.org>
1109 Replace ENABLE_LEGACY_WEB_AUDIO preprocessor statements in IDL files with Conditional attribute
1110 https://bugs.webkit.org/show_bug.cgi?id=114351
1112 Reviewed by Ryosuke Niwa.
1114 The Conditional attribute does not need a preprocessor, which is source of much pain on native windows.
1116 * Modules/webaudio/AudioBufferSourceNode.idl:
1117 * Modules/webaudio/AudioContext.idl:
1118 * Modules/webaudio/AudioParam.idl:
1119 * Modules/webaudio/OscillatorNode.idl:
1121 2013-04-10 Patrick Gansterer <paroga@webkit.org>
1123 Replace ENABLE_DIRECTORY_UPLOAD preprocessor statements in IDL files with Conditional attribute
1124 https://bugs.webkit.org/show_bug.cgi?id=114350
1126 Reviewed by Ryosuke Niwa.
1128 The Conditional attribute does not need a preprocessor, which is source of much pain on native windows.
1132 2013-04-10 Ryosuke Niwa <rniwa@webkit.org>
1134 Cleanup local variables in Editor::markAndReplaceFor
1135 https://bugs.webkit.org/show_bug.cgi?id=114383
1137 Reviewed by Enrica Casucci.
1139 Added resultEndLocation, which is the sum of resultLocation and resultLength.
1141 Also replaced ambiguousBoundaryOffset by useAmbiguousBoundaryOffset since the ambiguous offset is always
1142 selectionOffset -1 to avoid the extra house keeping and obnoxious -1 check.
1144 * editing/Editor.cpp:
1145 (WebCore::Editor::markAndReplaceFor):
1147 2013-04-10 Benjamin Poulain <bpoulain@apple.com>
1149 Mass remove all the empty directories
1151 Rubberstamped by Ryosuke Niwa.
1153 * Modules/intents: Removed.
1154 * Modules/protocolhandler: Removed.
1155 * Modules/speech/mac: Removed.
1156 * accessibility/efl: Removed.
1157 * accessibility/gtk: Removed.
1158 * bridge/jni/jsc: Removed.
1159 * editing/android: Removed.
1160 * editing/gtk: Removed.
1161 * history/android: Removed.
1162 * page/android: Removed.
1163 * platform/android: Removed.
1164 * platform/clutter: Removed.
1165 * platform/graphics/blackberry/skia: Removed.
1166 * platform/graphics/harfbuzz/ng: Removed.
1167 * platform/graphics/pango: Removed.
1168 * platform/image-decoders/cg: Removed.
1169 * platform/image-decoders/qt: Removed.
1170 * platform/network/android: Removed.
1171 * platform/network/soup/cache/webkit: Removed.
1172 * platform/text/android: Removed.
1173 * platform/text/wince: Removed.
1174 * platform/track: Removed.
1176 2013-04-10 Simon Fraser <simon.fraser@apple.com>
1178 Log when the animation timer fires
1179 https://bugs.webkit.org/show_bug.cgi?id=114393
1181 Reviewed by Dean Jackson.
1183 Logging to the Animations log channel when the updateAnimationTimer
1184 fires is useful, because it indicates whether we're running
1185 software animations.
1187 * page/animation/AnimationController.cpp:
1188 (WebCore::AnimationControllerPrivate::updateAnimationTimer):
1190 2013-04-10 Beth Dakin <bdakin@apple.com>
1192 Inspector highlights are offset when the WKView has a header
1193 https://bugs.webkit.org/show_bug.cgi?id=114389
1195 <rdar://problem/13522434>
1197 Reviewed by Sam Weinig.
1199 rootViewToContents() and contentsToRootView() need to factor in the
1200 headerHeight(), much like windowToContents() and contentsToWindow() do already.
1201 * platform/ScrollView.cpp:
1202 (WebCore::ScrollView::rootViewToContents):
1203 (WebCore::ScrollView::contentsToRootView):
1205 2013-04-10 Simon Fraser <simon.fraser@apple.com>
1207 Flesh out the Animations logging
1208 https://bugs.webkit.org/show_bug.cgi?id=114388
1210 Reviewed by Dean Jackson.
1212 Log state changes and transition/animation creation and destruction
1213 to the Animations log channel.
1215 * page/animation/AnimationBase.cpp:
1216 (WebCore::nameForState):
1217 (WebCore::AnimationBase::updateStateMachine):
1218 (WebCore::AnimationBase::fireAnimationEventsIfNeeded):
1219 (WebCore::AnimationBase::goIntoEndingOrLoopingState):
1220 (WebCore::AnimationBase::freezeAtTime):
1221 * page/animation/CompositeAnimation.cpp:
1222 (WebCore::CompositeAnimation::updateTransitions):
1223 (WebCore::CompositeAnimation::updateKeyframeAnimations):
1224 * page/animation/KeyframeAnimation.h:
1225 (WebCore::KeyframeAnimation::keyframes):
1226 (KeyframeAnimation):
1228 2013-04-10 Alexey Proskuryakov <ap@apple.com>
1230 <rdar://problem/13047266> External XML entities are not loaded with modern libxml2
1231 https://bugs.webkit.org/show_bug.cgi?id=114377
1233 Reviewed by Darin Adler.
1235 Covered by http/tests/security/xss-DENIED-xml-external-entity.xhtml when using
1238 * xml/parser/XMLDocumentParserLibxml2.cpp:
1239 (WebCore::switchToUTF16): Added a FIXME with an idea for improvement.
1240 (WebCore::XMLParserContext::createStringParser): Apply XML_PARSE_NOENT in a non-hacky
1241 way, so that the new libxml2 check doesn't fail.
1242 (WebCore::XMLParserContext::createMemoryParser): Updated an unhelpful and incorrect
1243 comment (XML_PARSE_NODICT actually means "Do not reuse the context dictionary").
1245 2013-04-10 Eric Carlson <eric.carlson@apple.com>
1247 [Mac] in-band tracks sometimes not recognized
1248 https://bugs.webkit.org/show_bug.cgi?id=114380
1250 Reviewed by Jer Noble.
1252 No new tests, covered by existing in-band tests.
1254 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1255 (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): Don't call selectMediaOption,
1256 availableMediaCharacteristicsWithMediaSelectionOptions is unlikely to be loaded at this time.
1257 (WebCore::MediaPlayerPrivateAVFoundationObjC::processTextTracks): Disable automatic text track
1259 (WebCore::assetMetadataKeyNames): Watch for the status of availableMediaCharacteristicsWithMediaSelectionOptions
1262 2013-04-10 Hans Muller <hmuller@adobe.com>
1264 [CSS Exclusions] Zoom causes shape-inside to fail when shape-padding is specified
1265 https://bugs.webkit.org/show_bug.cgi?id=113730
1267 Reviewed by Dirk Schulze.
1269 Snap computed margin and polygon boundaries to the LayoutUnit grid to ensure
1270 that they fall within the shape's LayoutUnit bounding box.
1272 Test: fast/exclusions/shape-inside/shape-inside-polygon-zoom.html
1274 * rendering/ExclusionPolygon.cpp:
1275 (WebCore::snapVerticesToLayoutUnitGrid): Convert the FloatPoint coordinates to LayoutUnits and then back to floats.
1276 (WebCore::computeShapePaddingBounds): Now calls snapVerticesToLayoutUnitGrid() before creating a FloatPolygon.
1277 (WebCore::computeShapeMarginBounds): Ditto.
1279 2013-04-10 Csaba Osztrogonác <ossy@webkit.org>
1281 One more unreviewed buildfix after r148123.
1283 * platform/graphics/filters/CustomFilterMeshGenerator.h:
1285 2013-04-10 Beth Dakin <bdakin@apple.com>
1287 FindBanner matches are offset when the WKView has a header or footer
1288 https://bugs.webkit.org/show_bug.cgi?id=114314
1290 <rdar://problem/13522434>
1292 Reviewed by Simon Fraser.
1294 There were already a few places in the code where we needed to adjust the
1295 scrollOffset() to pretend that (0,0) is that the top of the Document rather than
1296 the top of the header. To fix the FindBanner issues, we need to know that version
1297 of the offset in a few more places, so I added a function on ScrollView to fetch
1298 it called scrollOffsetRelativeToDocument().
1300 New function subtracts out the headerHeight() to treat the top of
1301 the document as (0,0).
1303 * platform/ScrollView.cpp:
1304 (WebCore::ScrollView::scrollOffsetRelativeToDocument):
1306 Use scrollOffsetRelativeToDocument() where we were previously making this
1307 calculation. Also re-name an inaccurately named variable where we are actually
1308 converting FROM a document offset to a ScrollableArea offset.
1309 (WebCore::ScrollView::windowToContents):
1310 * platform/ScrollView.h:
1313 getRectToExpose needs to know about the actual visibleContentRect and the
1314 visibleContentRect that is relative to the Document. So this
1315 patch adds a new parameter to getRectToExpose for that purpose.
1316 * rendering/RenderLayer.cpp:
1317 (WebCore::RenderLayer::scrollRectToVisible):
1318 (WebCore::RenderLayer::getRectToExpose):
1319 * rendering/RenderLayer.h:
1321 2013-04-10 Chris Fleizach <cfleizach@apple.com>
1323 when ARIA button contains a link, label text is ignored (affects main buttons on m.facebook.com)
1324 https://bugs.webkit.org/show_bug.cgi?id=113906
1326 Reviewed by Tim Horton.
1328 If an element does not expose any children, then it's safe to include all of its sub children when determining
1330 The bug is that all elements were ignoring focusable elements (like <a>) when determining visible children text
1332 Test: accessibility/link-inside-button-accessible-text.html
1334 * accessibility/AccessibilityNodeObject.cpp:
1335 (WebCore::shouldUseAccessiblityObjectInnerText):
1336 * accessibility/AccessibilityNodeObject.h:
1337 (AccessibilityNodeObject):
1338 * accessibility/AccessibilityObject.h:
1339 (WebCore::AccessibilityObject::isDescendantOfBarrenParent):
1340 (AccessibilityObject):
1342 2013-04-10 Chris Fleizach <cfleizach@apple.com>
1344 AX: Make sure all AX methods called from outside call prepareAccessibility
1345 https://bugs.webkit.org/show_bug.cgi?id=113818
1347 Reviewed by Darin Adler.
1349 Make sure any calls that can be made from outside WebCore are protected with the
1350 prepareAccessibility method.
1352 * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
1353 (-[WebAccessibilityObjectWrapper accessibilityMathRootIndexObject]):
1354 (-[WebAccessibilityObjectWrapper accessibilityMathRadicandObject]):
1355 (-[WebAccessibilityObjectWrapper accessibilityMathNumeratorObject]):
1356 (-[WebAccessibilityObjectWrapper accessibilityMathDenominatorObject]):
1357 (-[WebAccessibilityObjectWrapper accessibilityMathBaseObject]):
1358 (-[WebAccessibilityObjectWrapper accessibilityMathSubscriptObject]):
1359 (-[WebAccessibilityObjectWrapper accessibilityMathSuperscriptObject]):
1360 (-[WebAccessibilityObjectWrapper accessibilityMathUnderObject]):
1361 (-[WebAccessibilityObjectWrapper accessibilityMathOverObject]):
1362 (-[WebAccessibilityObjectWrapper accessibilityMathFencedOpenString]):
1363 (-[WebAccessibilityObjectWrapper accessibilityMathFencedCloseString]):
1364 (-[WebAccessibilityObjectWrapper accessibilityIsMathTopObject]):
1365 (-[WebAccessibilityObjectWrapper accessibilityMathType]):
1367 2013-04-10 Csaba Osztrogonác <ossy@webkit.org>
1369 Unreviewed buildfix after r148123.
1371 * inspector/InspectorInstrumentation.h:
1374 2013-04-10 Xabier Rodriguez Calvar <calvaris@igalia.com>
1376 Clicking on the volume slider of HTML5 elements is pausing sometimes
1377 https://bugs.webkit.org/show_bug.cgi?id=112548
1379 Reviewed by Eric Carlson.
1381 Test: media/click-volume-bar-not-pausing.html
1383 * html/shadow/MediaControlElementTypes.cpp:
1384 (WebCore::MediaControlVolumeSliderElement::defaultEventHandler):
1385 Calling the setDefaultHandled() method on the event prevents it
1386 from being incorrectly propagated from the volume button up to the
1389 2013-04-10 Arvid Nilsson <anilsson@rim.com>
1391 [BlackBerry] Rename BlackBerry specific Texture class
1392 https://bugs.webkit.org/show_bug.cgi?id=95781
1394 Reviewed by Rob Buis.
1396 Texture was a bit too generic and prone to name conflicts. Renamed it
1399 No change in behavior, no new tests.
1403 * PlatformBlackBerry.cmake:
1404 * platform/graphics/blackberry/LayerCompositingThread.cpp:
1405 (WebCore::LayerCompositingThread::drawSurface):
1406 (WebCore::LayerCompositingThread::contentsTexture):
1407 * platform/graphics/blackberry/LayerCompositingThread.h:
1408 (LayerCompositingThread):
1409 * platform/graphics/blackberry/LayerCompositingThreadClient.h:
1411 (WebCore::LayerCompositingThreadClient::contentsTexture):
1412 * platform/graphics/blackberry/LayerFilterRenderer.cpp:
1413 (WebCore::LayerFilterRenderer::applyActions):
1414 * platform/graphics/blackberry/LayerFilterRenderer.h:
1415 (LayerFilterRenderer):
1416 * platform/graphics/blackberry/LayerRendererSurface.h:
1417 (WebCore::LayerRendererSurface::texture):
1418 (LayerRendererSurface):
1419 * platform/graphics/blackberry/LayerTexture.cpp: Renamed from Source/WebCore/platform/graphics/blackberry/Texture.cpp.
1421 (WebCore::LayerTexture::LayerTexture):
1422 (WebCore::LayerTexture::~LayerTexture):
1423 (WebCore::LayerTexture::updateContents):
1424 (WebCore::LayerTexture::setContentsToColor):
1425 (WebCore::LayerTexture::protect):
1426 * platform/graphics/blackberry/LayerTexture.h: Renamed from Source/WebCore/platform/graphics/blackberry/Texture.h.
1429 (WebCore::LayerTexture::create):
1430 (WebCore::LayerTexture::textureId):
1431 (WebCore::LayerTexture::isDirty):
1432 (WebCore::LayerTexture::hasTexture):
1433 (WebCore::LayerTexture::isColor):
1434 (WebCore::LayerTexture::isOpaque):
1435 (WebCore::LayerTexture::isProtected):
1436 (WebCore::LayerTexture::protect):
1437 (WebCore::LayerTexture::unprotect):
1438 (WebCore::LayerTexture::size):
1439 (WebCore::LayerTexture::width):
1440 (WebCore::LayerTexture::height):
1441 (WebCore::LayerTexture::bytesPerPixel):
1442 (WebCore::LayerTexture::sizeInBytes):
1443 (WebCore::LayerTexture::setTextureId):
1444 (WebCore::LayerTexture::setSize):
1445 * platform/graphics/blackberry/LayerTile.cpp:
1446 (WebCore::LayerTile::setContents):
1447 (WebCore::LayerTile::updateContents):
1448 (WebCore::LayerTile::setTexture):
1449 * platform/graphics/blackberry/LayerTile.h:
1450 (WebCore::LayerTile::texture):
1452 * platform/graphics/blackberry/LayerTiler.cpp:
1453 (WebCore::LayerTiler::drawTile):
1454 (WebCore::LayerTiler::contentsTexture):
1455 * platform/graphics/blackberry/LayerTiler.h:
1457 (WebCore::LayerTiler::TextureJob::TextureJob):
1458 (WebCore::LayerTiler::TextureJob::setContents):
1459 (WebCore::LayerTiler::TextureJob::updateContents):
1461 * platform/graphics/blackberry/TextureCacheCompositingThread.cpp:
1462 (WebCore::TextureProtector::TextureProtector):
1464 (WebCore::TextureCacheCompositingThread::allocateTextureId):
1465 (WebCore::freeTextureId):
1466 (WebCore::TextureCacheCompositingThread::textureResized):
1467 (WebCore::TextureCacheCompositingThread::textureSizeInBytesChanged):
1468 (WebCore::TextureCacheCompositingThread::textureDestroyed):
1469 (WebCore::TextureCacheCompositingThread::install):
1470 (WebCore::TextureCacheCompositingThread::resizeTexture):
1471 (WebCore::TextureCacheCompositingThread::evict):
1472 (WebCore::TextureCacheCompositingThread::textureAccessed):
1473 (WebCore::TextureCacheCompositingThread::prune):
1474 (WebCore::TextureCacheCompositingThread::textureForTiledContents):
1475 (WebCore::TextureCacheCompositingThread::textureForColor):
1476 (WebCore::TextureCacheCompositingThread::updateContents):
1477 * platform/graphics/blackberry/TextureCacheCompositingThread.h:
1478 (WebCore::TextureCacheCompositingThread::createTexture):
1479 (TextureCacheCompositingThread):
1480 (WebCore::TextureCacheCompositingThread::ZombieTexture::ZombieTexture):
1483 2013-04-10 Andreas Kling <akling@apple.com>
1485 Disallow programmatic movement of the browser window while user gestures are in progress.
1486 <http://webkit.org/b/114271>
1487 <rdar://problem/13226530>
1489 Reviewed by Oliver Hunt.
1491 * page/DOMWindow.cpp:
1492 (WebCore::DOMWindow::moveBy):
1493 (WebCore::DOMWindow::moveTo):
1494 (WebCore::DOMWindow::resizeBy):
1495 (WebCore::DOMWindow::resizeTo):
1497 2013-04-10 Ryosuke Niwa <rniwa@webkit.org>
1499 Refactor Editor::markAndReplaceFor before fixing autocorrection bugs
1500 https://bugs.webkit.org/show_bug.cgi?id=114344
1502 Reviewed by Enrica Casucci.
1504 This patch refactors Editor::markAndReplaceFor so that we can start fixing bugs in a sane state.
1505 Extracted isAutomaticTextReplacementType and correctSpellcheckingPreservingTextCheckingParagraph,
1506 and made convenience local variables const.
1508 In particular, shouldMarkSpelling used to be assigned of false when shouldShowCorrectionPanel was true
1509 in a middle of a function but this was removed in favor of explicitly checking this condition later
1510 since shouldMarkSpelling was only referenced once after the assignment.
1512 * editing/Editor.cpp:
1513 (WebCore::isAutomaticTextReplacementType): Extracted.
1515 (WebCore::correctSpellcheckingPreservingTextCheckingParagraph): Extracted. Used highestAncestor
1516 and rangeFromLocationAndLength to match the rest of the up-to-date editing code.
1518 (WebCore::Editor::markAndReplaceFor): See above.
1520 2013-04-08 Anders Carlsson <andersca@apple.com>
1522 Remove unneeded headers from FrameLoader.h
1523 https://bugs.webkit.org/show_bug.cgi?id=114223
1525 Reviewed by Geoffrey Garen.
1527 Remove unneeded headers from FrameLoader.h and add them back into the respective .cpp files where needed.
1530 * history/CachedFrame.cpp:
1531 * history/PageCache.cpp:
1532 * inspector/InspectorResourceAgent.cpp:
1533 * loader/DocumentLoader.cpp:
1534 * loader/FrameLoader.cpp:
1535 (WebCore::FrameLoader::FrameLoader):
1536 (WebCore::FrameLoader::retryAfterFailedCacheOnlyMainResourceLoad):
1537 * loader/FrameLoader.h:
1539 (WebCore::FrameLoader::policyChecker):
1540 (WebCore::FrameLoader::history):
1541 (WebCore::FrameLoader::icon):
1542 * loader/MixedContentChecker.h:
1543 * loader/icon/IconLoader.cpp:
1546 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
1547 * testing/Internals.cpp:
1549 2013-04-10 Simon Fraser <simon.fraser@apple.com>
1551 Minor code cleanup in AnimationBase::progress
1552 https://bugs.webkit.org/show_bug.cgi?id=114371
1554 Reviewed by Dean Jackson.
1556 Convert some "return; else if" to just "return; if".
1558 * page/animation/AnimationBase.cpp:
1559 (WebCore::AnimationBase::progress):
1561 2013-04-10 Robert Hogan <robert@webkit.org>
1563 Empty inline continuations should only get lineboxes if the padding applies to their side of the inline
1564 https://bugs.webkit.org/show_bug.cgi?id=113896
1566 Reviewed by David Hyatt.
1568 Test: fast/inline/inline-with-empty-inline-continuations.html
1570 Where an empty inline is split across anonymous blocks we should only give lineboxes to the 'sides' of the
1571 inline that have borders, padding or margin.
1573 * rendering/RenderBlockLineLayout.cpp:
1574 (WebCore::shouldApplyStartBorderPaddingOrMargin):
1576 (WebCore::shouldApplyEndBorderPaddingOrMargin):
1577 (WebCore::hasInlineDirectionBordersPaddingOrMargin):
1578 (WebCore::alwaysRequiresLineBox):
1580 2013-04-10 Zoltan Horvath <zoltan@webkit.org>
1582 [CSS Exclusions] Increasing padding does not correctly layout child blocks
1583 https://bugs.webkit.org/show_bug.cgi?id=112929
1585 Reviewed by David Hyatt.
1587 If a child block has changed dimension inside a shape and it has affected the block siblings
1588 we need to relayout the content inside the shape.
1590 Test: fast/exclusions/shape-inside/shape-inside-sibling-block-dimension-change-needs-relayout.html
1592 * rendering/RenderBlock.cpp:
1593 (WebCore::RenderBlock::updateRegionsAndExclusionsAfterChildLayout): Add condition for dimension change.
1594 (WebCore::RenderBlock::layoutBlock): Call updateRegionsAndExclusionsAfterChildLayout with the new parameter.
1595 * rendering/RenderBlock.h:
1596 (RenderBlock): Add extra parameter to updateRegionsAndExclusionsAfterChildLayout(...)
1598 2013-04-10 Geoffrey Garen <ggaren@apple.com>
1600 Removed bitrotted TimeoutChecker code
1601 https://bugs.webkit.org/show_bug.cgi?id=114336
1603 Reviewed by Alexey Proskuryakov.
1605 This mechanism hasn't worked for a while.
1607 MarkL is working on a new version of this feature with a distinct
1610 * bindings/js/JSCallbackData.cpp:
1611 (WebCore::JSCallbackData::invokeCallback):
1612 * bindings/js/JSCustomXPathNSResolver.cpp:
1613 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
1614 * bindings/js/JSDOMWindowBase.cpp:
1615 (WebCore::JSDOMWindowBase::commonJSGlobalData):
1616 * bindings/js/JSErrorHandler.cpp:
1617 (WebCore::JSErrorHandler::handleEvent):
1618 * bindings/js/JSEventListener.cpp:
1619 (WebCore::JSEventListener::handleEvent):
1620 * bindings/js/JSMutationCallback.cpp:
1621 (WebCore::JSMutationCallback::call):
1622 * bindings/js/ScheduledAction.cpp:
1623 (WebCore::ScheduledAction::executeFunctionInContext):
1624 * bindings/js/ScriptController.cpp:
1625 (WebCore::ScriptController::evaluateInWorld):
1626 * bindings/js/SerializedScriptValue.cpp:
1627 (WebCore::CloneBase::CloneBase):
1628 (WebCore::CloneSerializer::serialize):
1629 (WebCore::CloneDeserializer::deserialize):
1630 * bindings/js/WorkerScriptController.cpp:
1631 (WebCore::WorkerScriptController::evaluate):
1632 * bindings/objc/WebScriptObject.mm:
1633 (-[WebScriptObject callWebScriptMethod:withArguments:]):
1634 (-[WebScriptObject evaluateWebScript:]):
1636 2013-04-10 Patrick Gansterer <paroga@webkit.org>
1638 Replace ENABLE_JAVASCRIPT_DEBUGGER preprocessor statements in IDL files with Conditional attribute
1639 https://bugs.webkit.org/show_bug.cgi?id=114352
1641 Reviewed by Timothy Hatcher.
1643 The Conditional attribute does not need a preprocessor, which is source of much pain on native windows.
1647 2013-04-10 Alexandru Chiculita <achicu@adobe.com>
1649 Layers with opacity and blur filters are reported as opaque to the compositor
1650 https://bugs.webkit.org/show_bug.cgi?id=114295
1652 Reviewed by Simon Fraser.
1654 Test: compositing/contents-opaque/filter.html
1656 Some filters like opacity and blur might still trigger transparency in the layer, even though the
1657 background is opaque. I've added the special case in RenderLayer::backgroundIsKnownToBeOpaqueInRect to check
1658 for filters that might have transparency. Note that this special case is required only for software drawn
1659 filters, as the transparency is going to be backed in the GraphicsLayer content. Composited filters can
1660 figure it out in the compositor.
1662 * rendering/RenderLayer.cpp:
1663 (WebCore::RenderLayer::backgroundIsKnownToBeOpaqueInRect):
1665 2013-04-10 Noam Rosenthal <noam@webkit.org>
1667 [Texmap] In certain situations nested blending with overflow:hidden displays clipped results
1668 https://bugs.webkit.org/show_bug.cgi?id=114290
1670 Reviewed by Allan Sandfeld Jensen.
1672 Always apply the clip when binding a surface, even if it hasn't changed.
1673 Otherwise when binding a nested surface and rebinding its container surface,
1674 the clip wouldn't apply.
1676 Test: compositing/overlap-blending/nested-overlap-overflow.html
1678 * platform/graphics/texmap/TextureMapperGL.cpp:
1679 (WebCore::BitmapTextureGL::bind):
1681 2013-04-10 Antti Koivisto <antti@apple.com>
1683 Use minimal tiles during live resize
1684 https://bugs.webkit.org/show_bug.cgi?id=114364
1686 Reviewed by Darin Adler.
1688 We currently update non-visible speculative tiles during resizing. We should just drop them.
1690 * page/FrameView.cpp:
1691 (WebCore::FrameView::willStartLiveResize):
1692 (WebCore::FrameView::willEndLiveResize):
1694 * rendering/RenderLayerBacking.cpp:
1695 (WebCore::computeTileCoverage):
1697 Use minimal coverage in live resize state.
1699 2013-04-10 Victor Costan <costan@gmail.com>
1701 Blob content type normalization.
1702 https://bugs.webkit.org/show_bug.cgi?id=111380
1704 Reviewed by Alexey Proskuryakov.
1706 Tests: http/tests/fast/files/blob-constructor.js
1707 http/tests/fileapi/xhr-send-form-data-filename-escaping.html
1708 http/tests/fileapi/xhr-send-form-data-mimetype-normalization.html
1710 * WebCore.exp.in: exported Blob::isNormalizedContentType()
1711 * bindings/js/JSBlobCustom.cpp:
1712 (WebCore::JSBlobConstructor::constructJSBlob): remove checks on Blob type, BlobBuilder will normalize it
1714 (BlobType): utilities for normalizing a Blob's type according to the File API spec
1715 (WebCore::BlobType::isValid): content type validity checks in the File API spec
1716 (WebCore::BlobType::normalize): implements the normalization rules in the File API spec
1717 (WebCore::BlobType::isNormalized): useful for ASSERTing that a Blob type has been normalized
1718 (WebCore): implement Blob type normalization according to the File API spec
1719 (WebCore::Blob::Blob): normalize the Blob type in the data URL
1720 (WebCore::Blob::slice): normalize the Blob type argument
1722 (BlobType): utilities for normalizing a Blob's type according to the File API spec
1723 (WebCore::Blob::create): assert that the deserialized Blob's type was normalized
1725 (WebCore::createBlobDataForFileWithType): assert that the File's MIME type is a normalized Blob type
1726 * fileapi/WebKitBlobBuilder.cpp:
1727 (WebCore::BlobBuilder::getBlob): normalize the Blob's type before building it
1728 * platform/network/BlobData.h:
1729 (WebCore::BlobData::setContentType): assert that the Blob type has been normalized
1730 * platform/network/FormData.cpp:
1731 (WebCore::FormData::appendKeyValuePairItems): assert that Blob's type has been normalized
1732 * platform/network/FormDataBuilder.cpp:
1733 (WebCore::FormDataBuilder::addContentTypeToMultiPartHeader): assert that the Content-Type field is normalized
1734 * xml/XMLHttpRequest.cpp: when responseType is blob, normalize Content-Type before passing to Blob constructor
1736 2013-04-10 Tim Horton <timothy_horton@apple.com>
1738 TileController doesn't remove tiles when the view is resized, leading to stale content
1739 https://bugs.webkit.org/show_bug.cgi?id=114323
1740 <rdar://problem/13520671>
1742 Reviewed by Simon Fraser.
1744 Ensure that tiles are removed if the view shrinks, so that they are not displayed
1745 with stale content if the view later grows again (they will not be repainted by WebCore
1748 * platform/graphics/ca/mac/TileController.h:
1749 * platform/graphics/ca/mac/TileController.mm:
1750 (WebCore::TileController::revalidateTiles):
1752 2013-04-10 Jessie Berlin <jberlin@apple.com>
1754 Update the localizable strings file.
1756 Rubber-stamped by Dan Bernstein.
1758 * English.lproj/Localizable.strings:
1760 2013-04-10 Patrick Gansterer <paroga@webkit.org>
1762 Replace ENABLE_CHANNEL_MESSAGING preprocessor statements in IDL files with Conditional attribute
1763 https://bugs.webkit.org/show_bug.cgi?id=114346
1765 Reviewed by Geoffrey Garen.
1767 The Conditional attribute does not need a preprocessor, which is source of much pain on native windows.
1769 * page/DOMWindow.idl:
1770 * workers/WorkerContext.idl:
1772 2013-04-10 Eric Carlson <eric.carlson@apple.com>
1774 Update all float attributes in HTMLMediaElement to double
1775 https://bugs.webkit.org/show_bug.cgi?id=113615
1777 Reviewed by Geoffrey Garen
1778 Patch by Aaron Colwell
1780 No new tests. Primary behavior doesn't change. Just time, playbackRate, and volume precision.
1781 All existing LayoutTests/media tests still pass.
1783 * WebCore.exp.in: Remove function that no longer need to be exported.
1785 * html/HTMLMediaElement.cpp: Change all float attributes to double.
1786 * html/HTMLMediaElement.h: Ditto.
1787 * html/HTMLMediaElement.idl: Ditto.
1788 * html/MediaController.cpp: Ditto.
1789 * html/MediaController.h: Ditto.
1790 * html/MediaControllerInterface.h: Ditto.
1791 * html/TimeRanges.cpp: Ditto.
1792 * html/TimeRanges.idl: Ditto.
1793 * html/shadow/MediaControlElementTypes.cpp: Ditto.
1794 * html/shadow/MediaControlElementTypes.h: Ditto.
1795 * html/shadow/MediaControlElements.cpp: Ditto.
1796 * html/shadow/MediaControlElements.h: Ditto.
1797 * html/shadow/MediaControls.cpp: Ditto.
1798 * html/shadow/MediaControlsApple.cpp: Ditto.
1799 * html/shadow/MediaControlsBlackBerry.cpp: Ditto.
1800 * html/shadow/MediaControlsBlackBerry.h: Ditto.
1801 * html/shadow/MediaControlsGtk.cpp: Ditto.
1802 * html/track/TextTrackCue.cpp: Ditto.
1803 * html/track/TextTrackCue.h: Ditto.
1804 * platform/Clock.h: Ditto.
1805 * platform/ClockGeneric.cpp: Ditto.
1806 * platform/ClockGeneric.h: Ditto.
1807 * platform/graphics/MediaPlayer.cpp: Ditto.
1808 * platform/graphics/MediaPlayer.h: Ditto.
1809 * platform/graphics/MediaPlayerPrivate.h: Ditto.
1810 * platform/mac/PlatformClockCA.cpp: Ditto.
1811 * platform/mac/PlatformClockCA.h: Ditto.
1812 * platform/mac/PlatformClockCM.h: Ditto.
1813 * platform/mac/PlatformClockCM.mm: Ditto.
1815 2013-04-10 Patrick Gansterer <paroga@webkit.org>
1817 Replace ENABLE_MICRODATA preprocessor statements in IDL files with Conditional attribute
1818 https://bugs.webkit.org/show_bug.cgi?id=114349
1820 Reviewed by Geoffrey Garen.
1822 The Conditional attribute does not need a preprocessor, which is source of much pain on native windows.
1825 * html/HTMLElement.idl:
1827 2013-04-10 Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
1829 REGRESSION(r148034): IconDatabase::updateIconRecord crashes with null iconData and iconBitmap.
1830 https://bugs.webkit.org/show_bug.cgi?id=114356
1832 Reviewed by Tim Horton.
1834 When loading an icon fails (for example, when a non-existent URI is
1835 passed to the loader), updateIconRecord can be called with both
1836 iconData and iconBitmap having no data.
1838 This used to be fine before r148034, but causes an assertion now.
1840 No new tests, existing tests such as fast/encoding/mispositioned-meta.html
1843 * loader/icon/IconDatabase.cpp:
1844 (WebCore::IconDatabase::updateIconRecord): Change the ASSERT() to check
1845 for a NAND condition that only fails if both iconData and iconBitmap
1848 2013-04-10 JungJik Lee <jungjik.lee@samsung.com>
1850 [Texmap] Update a dirty region which is not covered with keepRect.
1851 https://bugs.webkit.org/show_bug.cgi?id=113752
1853 Reviewed by Jocelyn Turcotte.
1855 There can be a dirty region which is not covered with keepRect.
1856 However the dirty could be inside the tile area. In this case,
1857 currently we ignore the dirty by intersecting with keepRect
1858 and the dirty region will not be invalidated until the tile is
1859 recreated. We must expand the keep rect to its intersecting tiles
1860 to make sure that the dirty region is applied to existing tiles.
1862 No tests needed, change is unobservable.
1864 * platform/graphics/TiledBackingStore.cpp:
1865 (WebCore::TiledBackingStore::invalidate):
1867 2013-04-10 Laszlo Gombos <l.gombos@samsung.com>
1869 Remove ENABLE_3D_PLUGIN
1870 https://bugs.webkit.org/show_bug.cgi?id=108002
1872 Remove ENABLE_3D_PLUGIN, it was only used by Chromium.
1874 Reviewed by Antti Koivisto.
1876 No new tests, removing dead code.
1878 * loader/SubframeLoader.cpp:
1879 (WebCore::SubframeLoader::loadPlugin):
1881 2013-04-10 Noam Rosenthal <noam@webkit.org>
1883 [Texmap] Hierarchy of layers with opacity may result in wrong blending.
1884 https://bugs.webkit.org/show_bug.cgi?id=113732
1886 Reviewed by Allan Sandfeld Jensen.
1888 This is a combination of three issues with nested intermediate surfaces:
1889 - glScissor inside an intermediate surface should not be mirrored.
1890 - The current surface should be passed to the next surface in paintOptions.
1891 - When clipping for the non-overlap region, the containing surface offset
1894 Though the changes are separate, they cannot be tested separately as neither
1895 fixes a testable case on its own.
1897 Tests: compositing/overlap-blending/nested-non-overlap-clipping.html
1898 compositing/overlap-blending/nested-overlap.html
1900 * platform/graphics/texmap/TextureMapperGL.cpp:
1901 (WebCore::TextureMapperGL::ClipStack::reset):
1902 (WebCore::TextureMapperGL::ClipStack::apply):
1903 (WebCore::TextureMapperGL::beginPainting):
1904 (WebCore::BitmapTextureGL::clearIfNeeded):
1905 * platform/graphics/texmap/TextureMapperGL.h:
1907 Do not mirror the scissor clip when painting to an FBO.
1908 Also a minor refactor to avoid reading the viewport values from the driver.
1910 * platform/graphics/texmap/TextureMapperLayer.cpp:
1911 (WebCore::TextureMapperLayer::paintUsingOverlapRegions):
1912 Apply the offset when clipping for a non-overlap region.
1913 (WebCore::TextureMapperLayer::paintIntoSurface):
1914 Make sure the current surface is passed to the next one.
1916 2013-04-10 Antti Koivisto <antti@apple.com>
1918 Create fewer tiles when page is loading
1919 https://bugs.webkit.org/show_bug.cgi?id=114294
1921 Reviewed by Anders Carlsson.
1923 We currently create speculative tiles immediately. Page is often changing rapidly during loading and
1924 keeping the speculative tiles up to date creates extra work.
1926 Tests: platform/mac-wk2/tiled-drawing/tile-coverage-after-scroll-speculative.html
1927 platform/mac-wk2/tiled-drawing/tile-coverage-speculative.html
1929 * loader/FrameLoader.cpp:
1930 (WebCore::FrameLoader::loadProgressingStatusChanged):
1931 * page/FrameView.cpp:
1932 (WebCore::FrameView::adjustTiledBackingCoverage):
1933 (WebCore::FrameView::setWasScrolledByUser):
1935 User scrolling enables speculative tiling no matter what the load status.
1938 * rendering/RenderLayerBacking.cpp:
1939 (WebCore::computeTileCoverage):
1940 (WebCore::RenderLayerBacking::adjustTiledBackingCoverage):
1942 Cover only the viewport during loading.
1944 2013-04-10 Alberto Garcia <agarcia@igalia.com>
1946 [BlackBerry] RenderThemeBlackBerry: get rid of all the SKIA code
1947 https://bugs.webkit.org/show_bug.cgi?id=114339
1949 Reviewed by Carlos Garcia Campos.
1951 * platform/blackberry/RenderThemeBlackBerry.cpp:
1952 (WebCore::RenderThemeBlackBerry::paintMediaSliderTrack):
1953 (WebCore::RenderThemeBlackBerry::paintMediaSliderThumb):
1954 (WebCore::RenderThemeBlackBerry::paintMediaVolumeSliderTrack):
1955 (WebCore::RenderThemeBlackBerry::paintMediaVolumeSliderThumb):
1957 2013-04-10 Zan Dobersek <zdobersek@igalia.com>
1959 REGRESSION (r147719): Failures in two a11y tests on GTK
1960 https://bugs.webkit.org/show_bug.cgi?id=114259
1962 Reviewed by Ryosuke Niwa.
1964 No new tests - covered by existing tests.
1966 Partially revert r147719, restoring the possible creation of the AXObject cache
1967 and the subsequent call to its handleFocusedUIElementChanged method. Removing this
1968 code caused regressions in accessibility tests on the GTK port, so the comment about
1969 the AXObject cache is adjusted accordingly.
1972 (WebCore::Document::setFocusedNode):
1974 2013-04-09 Philippe Normand <pnormand@igalia.com>
1976 [GStreamer] playbin uri getter is invalid
1977 https://bugs.webkit.org/show_bug.cgi?id=113884
1979 Reviewed by Martin Robinson.
1981 When loading a new media location use the url stored as a member
1982 variable instead of the one stored as a playbin property. The uri
1983 property semantic changed in playbin since 0.10.36+. One should
1984 now use current-uri but to avoid ifdefs depending on GStreamer
1985 version we simply use the url already known as member variable.
1987 Test: http/tests/media/video-redirect.html
1989 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1991 2013-04-09 Geoffrey Garen <ggaren@apple.com>
1993 [JSC] Script run from an isolated world should bypass a page's CSP
1994 https://bugs.webkit.org/show_bug.cgi?id=100815
1996 Reviewed by Oliver Hunt.
1998 * bindings/js/ScriptController.cpp:
1999 (WebCore::ScriptController::shouldBypassMainWorldContentSecurityPolicy):
2000 * bindings/js/ScriptController.h: Test the current caller's DOM wrapper
2001 world to decide whether CSP should be enforced.
2003 Like most of CSP, this is a stupid policy because it doesn't address
2004 second-order effects like <script> parsing or event handler execution,
2005 which might be triggered indirectly by privileged scripts. These indirect
2006 effects are still broken. Oh well.
2008 2013-04-09 Benjamin Poulain <bpoulain@apple.com>
2010 Remove chromium exceptions from WebCore's gitattributes
2011 https://bugs.webkit.org/show_bug.cgi?id=114327
2013 Reviewed by Darin Adler.
2017 2013-04-09 Adam Klein <adamk@chromium.org>
2019 Update Document's event listener type bitfield when adopting a Node
2020 https://bugs.webkit.org/show_bug.cgi?id=114322
2022 Reviewed by Darin Adler.
2024 Without this, moving a Node between documents can silently deactivate
2025 an event listener, if it's one of the types that whose creation is
2026 optimized away by Document::hasListenerType.
2028 An alternate approach would be to simply copy the old document's
2029 bitfield over. It's a tradeoff between making adoption fast and making
2030 the operation of any operation depending on these event types fast.
2031 The latter seems like the right optimization given that adoption
2032 doesn't happen very often.
2034 Test: fast/events/event-listener-moving-documents.html
2037 (WebCore::Node::didMoveToNewDocument): For each event listener type on the adopted node, update the new document's list of listener types.
2039 2013-04-09 Dean Jackson <dino@apple.com>
2041 Add logging channel for animations
2042 https://bugs.webkit.org/show_bug.cgi?id=114325
2044 Reviewed by Simon Fraser.
2046 * platform/Logging.cpp: Add LogAnimations.
2047 (WebCore::getChannelFromName): Return LogAnimations for "Animations".
2048 * platform/Logging.h: Add LogAnimations.
2049 * platform/mac/LoggingMac.mm:
2050 (WebCore::initializeLoggingChannelsIfNecessary): Copy preference.
2051 * platform/win/LoggingWin.cpp:
2052 (WebCore::initializeLoggingChannelsIfNecessary): Copy preference.
2054 2013-04-09 Dongwoo Joshua Im <dw.im@samsung.com>
2056 [CSS3] Parsing the property, text-justify.
2057 https://bugs.webkit.org/show_bug.cgi?id=100058
2059 Reviewed by Andreas Kling.
2061 This patch implements the parsing side of the "text-justify" property specified
2062 in CSS3 working draft, with "-webkit-" prefix, under ENABLE_CSS3_TEXT flag.
2063 Specification link : http://www.w3.org/TR/css3-text/#text-justify
2065 Tests: fast/css3-text/css3-text-justify/getComputedStyle/getComputedStyle-text-justify-inherited.html
2066 fast/css3-text/css3-text-justify/getComputedStyle/getComputedStyle-text-justify.html
2068 * css/CSSComputedStyleDeclaration.cpp:
2070 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2071 * css/CSSParser.cpp:
2072 (WebCore::isValidKeywordPropertyAndValue):
2073 (WebCore::isKeywordPropertyID):
2074 (WebCore::CSSParser::parseValue):
2075 * css/CSSPrimitiveValueMappings.h:
2077 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2078 (WebCore::CSSPrimitiveValue::operator TextJustify):
2079 * css/CSSProperty.cpp:
2080 (WebCore::CSSProperty::isInheritedProperty):
2081 * css/CSSPropertyNames.in:
2082 * css/CSSValueKeywords.in:
2083 * css/StyleBuilder.cpp:
2084 (WebCore::StyleBuilder::StyleBuilder):
2085 * css/StylePropertySet.cpp:
2087 * css/StyleResolver.cpp:
2088 (WebCore::StyleResolver::applyProperty):
2089 * rendering/style/RenderStyle.h:
2090 * rendering/style/RenderStyleConstants.h:
2091 * rendering/style/StyleRareInheritedData.cpp:
2092 (WebCore::StyleRareInheritedData::StyleRareInheritedData):
2093 (WebCore::StyleRareInheritedData::operator==):
2094 * rendering/style/StyleRareInheritedData.h:
2095 (StyleRareInheritedData):
2097 2013-04-09 Joone Hur <joone.hur@intel.com>
2099 [GTK][AC] Adding contentsLayer for image and video
2100 https://bugs.webkit.org/show_bug.cgi?id=113912
2102 Reviewed by Gustavo Noronha Silva.
2104 contentsLayer is a ClutterActor, which is added to the main layer
2105 as a child when GraphicsLayer needs to render an image or video.
2107 No new tests, already covered by existing AC tests.
2109 * platform/graphics/clutter/GraphicsLayerActor.cpp:
2110 (graphicsLayerActorUpdateTexture):
2111 * platform/graphics/clutter/GraphicsLayerClutter.cpp:
2112 (WebCore::GraphicsLayerClutter::GraphicsLayerClutter):
2113 (WebCore::GraphicsLayerClutter::~GraphicsLayerClutter):
2115 (WebCore::GraphicsLayerClutter::setContentsToImage): Pass a Cairo surface to GraphicsLayer.
2116 (WebCore::GraphicsLayerClutter::setContentsNeedsDisplay):
2117 (WebCore::GraphicsLayerClutter::setContentsRect):
2118 (WebCore::GraphicsLayerClutter::commitLayerChangesBeforeSublayers):
2119 (WebCore::GraphicsLayerClutter::setupContentsLayer):
2120 (WebCore::GraphicsLayerClutter::updateContentsImage): Set the Cairo surface for contentsLayer
2121 to upload it as a texture.
2122 (WebCore::GraphicsLayerClutter::updateContentsNeedsDisplay):
2123 (WebCore::GraphicsLayerClutter::updateContentsRect):
2124 (WebCore::GraphicsLayerClutter::updateSublayerList):
2125 * platform/graphics/clutter/GraphicsLayerClutter.h:
2126 (WebCore::GraphicsLayerClutter::hasContentsLayer):
2127 (GraphicsLayerClutter):
2128 (WebCore::GraphicsLayerClutter::contentsLayer):
2130 2013-04-09 Alexey Proskuryakov <ap@apple.com>
2132 REGRESSION: Blob URLs broken with NetworkProcess
2133 https://bugs.webkit.org/show_bug.cgi?id=114320
2135 Reviewed by Brady Eidson.
2137 Update BlobResourceHandle to use modern resource client calls.
2139 * platform/network/BlobResourceHandle.cpp:
2140 (WebCore::BlobResourceHandle::readSync): Don't call notifyReceiveData if there is
2141 no data (it's especially egregious when length is -1, signaling an error).
2142 (WebCore::BlobResourceHandle::notifyResponseOnSuccess): Use didReceiveResponseAsync
2143 when a client wants async callbacks. This is not very clean, as we don't wait
2144 for response, but should be workable for blobs.
2145 (WebCore::BlobResourceHandle::notifyResponseOnError): Ditto.
2146 (WebCore::BlobResourceHandle::notifyReceiveData): Use didReceiveBuffer (clients
2147 that only implement didReceiveData will have it automatically unwrapped).
2149 2013-04-09 Jer Noble <jer.noble@apple.com>
2151 REGRESSION (r123837): Full screen transition is broken at apple.com
2152 https://bugs.webkit.org/show_bug.cgi?id=95650
2154 Reviewed by Simon Fraser.
2156 Cancel any outstanding animations on <video> elements as they enter full screen, so as to
2157 not confuse the WebKit/WebKit2 full screen window animation about the starting and destination
2160 * css/fullscreen.css:
2161 (video:-webkit-full-screen, audio:-webkit-full-screen):
2163 2013-04-09 Jer Noble <jer.noble@apple.com>
2165 hang in mediaSelectionGroupForMediaCharacteristic
2166 https://bugs.webkit.org/show_bug.cgi?id=114054
2168 Reviewed by Eric Carlson.
2170 No new tests; Fixes sporadic hangs in media/ tests.
2172 -[AVURLAsset mediaSelectionGroupForMediaCharacteristic:] can deadlock in certain situations: When AVURLAsset
2173 posts a synchronous AVAssetResourceLoader notification to the main thread, calling -mediaSelectionGroupForMediaCharacteristic:
2174 on the main thread requires IO to occur if the media characteristics are not yet loaded. Instead of blocking,
2175 bail out early if the media characteristics are not yet known.
2177 Add a new method, safeMediaSelectionGroupForLegibleMedia(), which first checks selection group availability
2178 before calling mediaSelectionGroupForMediaCharacteristic:.
2180 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
2181 (MediaPlayerPrivateAVFoundationObjC):
2182 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2183 (WebCore::MediaPlayerPrivateAVFoundationObjC::safeMediaSelectionGroupForLegibleMedia): Added.
2184 (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): Use new safe method.
2185 (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Ditto.
2186 (WebCore::MediaPlayerPrivateAVFoundationObjC::processTextTracks): Ditto.
2187 (WebCore::MediaPlayerPrivateAVFoundationObjC::setCurrentTrack): Ditto.
2189 2013-04-09 Chris Fleizach <cfleizach@apple.com>
2191 AX: Bounding paths should be made available through accessibility
2192 https://bugs.webkit.org/show_bug.cgi?id=113817
2194 Unreviewed build fix for iOS.
2196 * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
2197 (-[WebAccessibilityObjectWrapper _accessibilityPath]):
2198 * accessibility/mac/WebAccessibilityObjectWrapperBase.h:
2200 2013-04-09 Eric Carlson <eric.carlson@apple.com>
2202 Unreviewed correctness fix: use lroundf instead of lround for a float to int conversion.
2204 * html/shadow/MediaControlElements.cpp:
2205 (WebCore::MediaControlTextTrackContainerElement::updateTimerFired):
2207 2013-04-06 Roger Fong <roger_fong@apple.com>
2209 Change requisite hardware checks for enabling antialiasing.
2210 https://bugs.webkit.org/show_bug.cgi?id=114101
2211 <rdar://problem/12342776>.
2213 m_maySupportMultisampling should be true by default for all platforms/hardware now except older versions of AMD.
2215 Reviewed by Dean Jackson.
2217 * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
2218 (WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon):
2220 2013-04-09 Commit Queue <rniwa@webkit.org>
2222 Unreviewed, rolling out r148010.
2223 http://trac.webkit.org/changeset/148010
2224 https://bugs.webkit.org/show_bug.cgi?id=114310
2226 Causes problems with focus rings (Requested by anttik on
2229 * css/StyleBuilder.cpp:
2230 (WebCore::ApplyPropertyComputeLength::applyValue):
2231 (WebCore::ApplyPropertyComputeLength::createHandler):
2232 (WebCore::StyleBuilder::StyleBuilder):
2234 2013-04-09 Eric Carlson <eric.carlson@apple.com>
2236 Unreviewed, another fix for the Windows build after r148050.
2238 * html/track/TextTrackCueGeneric.cpp:
2239 (WebCore::TextTrackCueGeneric::setFontSize): Use lround().
2241 2013-04-09 Bem Jones-Bey <bjonesbe@adobe.com>
2243 [CSS Exclusions] Properly position multiple stacked floats with non rectangular shape outside
2244 https://bugs.webkit.org/show_bug.cgi?id=110372
2246 Reviewed by Dean Jackson.
2248 Stacked floats get positioned based on the bounding box of the shape,
2249 not on the shape contours itself. This patch causes that to happen.
2251 Test: fast/exclusions/shape-outside-floats/shape-outside-floats-stacked.html
2253 * rendering/RenderBlock.cpp:
2254 (WebCore::RenderBlock::computeLogicalLocationForFloat): Use the
2255 "BoundingBoxOffset" mode so that we compute offsets based on the shape
2256 bounding boxes of previous floats, not the shape contour.
2257 (WebCore::RenderBlock::logicalLeftOffsetForLine): Check the
2258 ShapeOutsideFloatOffsetMode to determine if the offset should be
2259 adjusted for the shape contour or not.
2260 (WebCore::RenderBlock::logicalRightOffsetForLine): Ditto.
2261 * rendering/RenderBlock.h:
2262 (WebCore::RenderBlock::logicalRightOffsetForLine): Add parameter for offset mode.
2263 (WebCore::RenderBlock::logicalLeftOffsetForLine): Ditto.
2265 * rendering/RenderBlockLineLayout.cpp:
2266 (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): If the
2267 new float is being added on top of a previous float on the same line,
2268 undo the offset for the previous float's shape contour so that we
2269 position the new float based on the bounding box.
2271 2013-04-09 Eric Carlson <eric.carlson@apple.com>
2273 Unreviewed, fix the Windows build after r148050.
2275 * html/shadow/MediaControlElements.cpp:
2276 (WebCore::MediaControlTextTrackContainerElement::updateTimerFired): Use lround().
2278 2013-04-09 Tim Horton <timothy_horton@apple.com>
2280 [wk2] IconDatabase images should be decoded in the WebProcess
2281 ​https://bugs.webkit.org/show_bug.cgi?id=112524
2282 <rdar://problem/10133914>
2284 Reviewed by Simon Fraser.
2286 Move an ASSERT that dereferenced a pointer inside the null-check for that pointer.
2288 * loader/icon/IconDatabase.cpp:
2289 (WebCore::IconDatabase::setIconBitmapForIconURL):
2291 2013-04-09 Eric Carlson <eric.carlson@apple.com>
2293 [Mac] user caption styles not applied to correct element
2294 https://bugs.webkit.org/show_bug.cgi?id=114230
2296 Reviewed by Jer Noble.
2298 Test: media/track/track-css-user-override.html
2300 * html/HTMLMediaElement.cpp:
2301 (WebCore::HTMLMediaElement::updateActiveTextTrackCues): Drive by clean-up so we don't log excessively.
2303 * html/shadow/MediaControlElements.cpp:
2304 (WebCore::MediaControlTextTrackContainerElement::MediaControlTextTrackContainerElement): Initialize
2305 new member variables.
2306 (WebCore::MediaControlTextTrackContainerElement::updateDisplay): Set cue font size when it is
2307 inserted into the tree.
2308 (WebCore::MediaControlTextTrackContainerElement::updateTimerFired): Update the font size of
2310 (WebCore::MediaControlTextTrackContainerElement::updateSizes): Set size-relative CSS properties
2311 after a time because this can be called during layout.
2312 * html/shadow/MediaControlElements.h:
2314 * html/shadow/MediaControls.cpp:
2315 (WebCore::MediaControls::textTrackPreferencesChanged): Call closedCaptionTracksChanged before updateSizes.
2317 * html/track/TextTrackCue.cpp:
2318 (WebCore::TextTrackCue::setFontSize): New, set the cue's font size.
2319 * html/track/TextTrackCue.h:
2321 * html/track/TextTrackCueGeneric.cpp:
2322 (WebCore::TextTrackCueGenericBoxElement::applyCSSProperties): Set cue properties on the cue element
2323 instead of on the cue box to match what we do for the "cue" pseudo element.
2324 (WebCore::TextTrackCueGeneric::setFontSize): New, set the cue's font size.
2325 * html/track/TextTrackCueGeneric.h:
2327 * html/track/TextTrackList.cpp:
2328 (TextTrackList::remove): Drive-by cleanup, don't ASSERT when the media element is NULL.
2330 * page/CaptionUserPreferences.cpp:
2331 (WebCore::CaptionUserPreferences::setCaptionsStyleSheetOverride): New, allow user CSS overrides
2332 to be tested in DRT.
2333 (WebCore::CaptionUserPreferences::updateCaptionStyleSheetOveride): New, generate a user style
2334 sheet override. Moved here from CaptionUserPreferencesMac.
2335 * page/CaptionUserPreferences.h:
2337 * page/CaptionUserPreferencesMac.h:
2338 * page/CaptionUserPreferencesMac.mm:
2339 (WebCore::CaptionUserPreferencesMac::captionsBackgroundCSS): Don't ignore background color importance.
2340 (WebCore::CaptionUserPreferencesMac::captionsStyleSheetOverride): Implement even when we don't
2341 have the media accessibility framework so this can be tested in DRT. Apply all cue properties
2342 to the element used for the "cue" pseudo element.
2344 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2345 (WebCore::MediaPlayerPrivateAVFoundation::didLoadingProgress): Drive-by cleanup, remove logging
2346 because this method is called so frequently and the logging is not especially useful.
2347 (WebCore::MediaPlayerPrivateAVFoundation::updateStates): Only log when the ready/network
2348 state changes because this method is called so frequently.
2350 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2351 (WebCore::MediaPlayerPrivateAVFoundationObjC::platformLayer): Drive-by cleanup, remove logging
2352 because this method is called so frequently and the logging is not especially useful.
2353 (WebCore::MediaPlayerPrivateAVFoundationObjC::setCurrentTrack): Make the logging more useful.
2355 * testing/Internals.cpp:
2356 (WebCore::Internals::resetToConsistentState): Reset captions style sheet override.
2357 (WebCore::Internals::captionsStyleSheetOverride): New, return the captions style sheet override.
2358 (WebCore::Internals::setCaptionsStyleSheetOverride): New, override the captions style sheet override.
2359 * testing/Internals.h:
2360 * testing/Internals.idl:
2362 2013-04-08 Simon Fraser <simon.fraser@apple.com>
2364 Repaint rect too small on elements with shadows
2365 https://bugs.webkit.org/show_bug.cgi?id=114225
2367 Reviewed by Dain Adler.
2369 We assumed that shadows (box-shadow, text-shadow, svg shadows)
2370 only required inflating the repaint rect by the blur radius of
2371 the shadow. However, this is incorrect; the shadow can extend
2372 further, which resulted in clipped or incorrectly invalidated
2375 Fix by disambiguating the blur radius (which is 2x the standard
2376 deviation of the Gaussian distribution used to generate the blur),
2377 from the painting extent, which is how far the shadow visually
2378 projects. Using a 1.4 multiplier of the blur radius is a good
2379 approximation for the painting extent.
2381 Renamed ShadowData::blur() to ShadowData::radius(), and added
2382 ShadowData::paintingExtent(). Use the latter in all places
2383 which relate to invalidation.
2385 Test: fast/box-shadow/shadow-repaint.html
2387 * css/CSSComputedStyleDeclaration.cpp:
2388 (WebCore::CSSComputedStyleDeclaration::valueForShadow):
2389 * editing/mac/EditorMac.mm:
2390 (WebCore::Editor::fontAttributesForSelectionStart):
2391 * page/animation/CSSPropertyAnimation.cpp:
2392 (WebCore::blendFunc):
2393 * rendering/EllipsisBox.cpp:
2394 (WebCore::EllipsisBox::paint):
2395 * rendering/InlineTextBox.cpp:
2396 (WebCore::InlineTextBox::applyShadowToGraphicsContext):
2397 (WebCore::InlineTextBox::paintDecoration):
2398 * rendering/RenderBoxModelObject.cpp:
2399 (WebCore::applyBoxShadowForBackground):
2400 (WebCore::areaCastingShadowInHole):
2401 (WebCore::RenderBoxModelObject::paintBoxShadow):
2402 * rendering/style/RenderStyle.cpp:
2403 (WebCore::RenderStyle::getShadowExtent):
2404 (WebCore::RenderStyle::getShadowInsetExtent):
2405 (WebCore::RenderStyle::getShadowHorizontalExtent):
2406 (WebCore::RenderStyle::getShadowVerticalExtent):
2407 * rendering/style/ShadowData.cpp:
2408 (WebCore::ShadowData::ShadowData):
2409 (WebCore::ShadowData::operator==):
2410 (WebCore::calculateShadowExtent):
2411 * rendering/style/ShadowData.h:
2412 (WebCore::ShadowData::ShadowData):
2413 (WebCore::ShadowData::radius):
2414 (WebCore::ShadowData::paintingExtent):
2415 * rendering/svg/SVGRenderingContext.cpp:
2416 (WebCore::SVGRenderingContext::prepareToRenderSVGContent):
2418 2013-04-08 Simon Fraser <simon.fraser@apple.com>
2420 window.internals.repaintRectsAsText() is hard to use because it doesn't force layout
2421 https://bugs.webkit.org/show_bug.cgi?id=114219
2423 Reviewed by Beth Dakin.
2425 Force layout when setTracksRepaints() is set to true, to flush out any pending
2426 repaints from a layout that hasn't happened yet. Also force layout in
2427 trackedRepaintRectsAsText(), so that any pending layout happpens and thus
2430 * page/FrameView.cpp:
2431 (WebCore::FrameView::setTracksRepaints):
2432 (WebCore::FrameView::trackedRepaintRectsAsText):
2434 2013-04-09 Chris Fleizach <cfleizach@apple.com>
2436 AX: Bounding paths should be made available through accessibility
2437 https://bugs.webkit.org/show_bug.cgi?id=113817
2439 Unreviewed build fix (again).
2441 * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2442 (-[WebAccessibilityObjectWrapper convertPointToScreenSpace:]):
2444 2013-04-09 Chris Fleizach <cfleizach@apple.com>
2446 AX: Bounding paths should be made available through accessibility
2447 https://bugs.webkit.org/show_bug.cgi?id=113817
2449 Unreviewed build fix.
2451 * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2452 (WebTransformCGPathToNSBezierPath):
2454 2013-04-09 Chris Fleizach <cfleizach@apple.com>
2456 AX: Bounding paths should be made available through accessibility
2457 https://bugs.webkit.org/show_bug.cgi?id=113817
2459 Reviewed by Tim Horton.
2461 Minor fix from review feedback.
2463 * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2464 (-[WebAccessibilityObjectWrapper convertPointToScreenSpace:]):
2466 2013-04-09 Tim Horton <timothy_horton@apple.com>
2468 [wk2] IconDatabase images should be decoded in the WebProcess
2469 https://bugs.webkit.org/show_bug.cgi?id=112524
2470 <rdar://problem/10133914>
2472 Reviewed by Oliver Hunt.
2474 No testable behavior change.
2476 * loader/icon/IconDatabase.cpp:
2477 (WebCore::IconDatabase::updateIconRecord):
2478 Added updateIconRecord, which factors most of setIconDataForIconURL out so it can
2479 be shared with setIconBitmapForIconURL. This function will set either a bitmap or
2480 raw image data for the given icon URL.
2482 (WebCore::IconDatabase::setIconBitmapForIconURL):
2483 Added; make a copy of the bitmap for thread-safety purposes, and call updateIconRecord.
2485 (WebCore::IconDatabase::setIconDataForIconURL):
2486 Factored out of what is now updateIconRecord.
2488 * loader/icon/IconDatabase.h:
2489 (IconDatabase): Add setIconBitmapForIconURL and updateIconRecord.
2491 * loader/icon/IconDatabaseBase.h:
2492 (WebCore::IconDatabaseBase::setIconBitmapForIconURL): Added.
2493 * loader/icon/IconRecord.cpp:
2494 (WebCore::IconRecord::setImage): Set the image for an icon record directly (as opposed
2495 to setting the image data, which causes the image to be decoded in the WebProcess).
2496 * loader/icon/IconRecord.h:
2497 (IconRecord): Add setImage.
2499 2013-04-09 Chris Fleizach <cfleizach@apple.com>
2501 AX: The bounding paths should be made available through accessibility
2502 https://bugs.webkit.org/show_bug.cgi?id=113817
2504 Reviewed by David Kilzer.
2506 This allows bounding paths to be returned for some web elements (image map areas and SVG shapes).
2507 This provides more accuracy when assistive technologies highlight elements.
2508 The Mac and iOS platforms share some code to help transform paths to their screen coordinates.
2510 Tests: platform/iphone-simulator/accessibility/element-paths.html
2511 platform/mac/accessibility/element-paths.html
2513 * accessibility/AccessibilityImageMapLink.cpp:
2514 (WebCore::AccessibilityImageMapLink::imageMapLinkRenderer):
2516 (WebCore::AccessibilityImageMapLink::elementPath):
2517 (WebCore::AccessibilityImageMapLink::elementRect):
2518 * accessibility/AccessibilityImageMapLink.h:
2519 (AccessibilityImageMapLink):
2520 (WebCore::AccessibilityImageMapLink::supportsPath):
2521 * accessibility/AccessibilityObject.h:
2522 (WebCore::AccessibilityObject::elementPath):
2523 (WebCore::AccessibilityObject::supportsPath):
2524 * accessibility/AccessibilityRenderObject.cpp:
2526 (WebCore::AccessibilityRenderObject::supportsPath):
2527 (WebCore::AccessibilityRenderObject::elementPath):
2528 * accessibility/AccessibilityRenderObject.h:
2529 (AccessibilityRenderObject):
2530 * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
2531 (-[WebAccessibilityObjectWrapper _accessibilityPath]):
2532 (-[WebAccessibilityObjectWrapper convertPointToScreenSpace:]):
2533 (-[WebAccessibilityObjectWrapper convertRectToScreenSpace:]):
2534 (-[WebAccessibilityObjectWrapper accessibilityActivationPoint]):
2535 (-[WebAccessibilityObjectWrapper accessibilityFrame]):
2536 (-[WebAccessibilityObjectWrapper frameForTextMarkers:]):
2537 * accessibility/mac/WebAccessibilityObjectWrapperBase.h:
2539 * accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
2540 (PathConversionInfo):
2541 (ConvertPathToScreenSpaceFunction):
2542 (-[WebAccessibilityObjectWrapperBase convertPathToScreenSpace:]):
2543 (-[WebAccessibilityObjectWrapperBase convertPointToScreenSpace:]):
2544 * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2545 (-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
2546 (-[WebAccessibilityObjectWrapper convertPointToScreenSpace:]):
2547 (WebTransformCGPathToNSBezierPath):
2548 (-[WebAccessibilityObjectWrapper bezierPathFromPath:]):
2549 (-[WebAccessibilityObjectWrapper path]):
2550 (-[WebAccessibilityObjectWrapper position]):
2551 (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
2553 2013-04-09 Benjamin Poulain <bpoulain@apple.com>
2555 Remove the WebKit copy of GLU and the file using it
2556 https://bugs.webkit.org/show_bug.cgi?id=114249
2558 Reviewed by Darin Adler.
2560 * platform/graphics/gpu/LoopBlinnPathProcessor.cpp: Removed.
2562 2013-04-09 Andreas Kling <akling@apple.com>
2564 Throttle resize events during live window resize.
2565 <http://webkit.org/b/114292>
2566 <rdar://problem/13411454>
2568 Reviewed by Geoffrey Garen.
2570 Limit resize events to one at max every 0.2 seconds during live window resize.
2571 This mitigates heavy CPU usage during resize on pages with complex onresize handlers.
2572 If there's a pending resize event when the live resize ends, it fires immediately.
2574 * page/FrameView.cpp:
2575 (WebCore::FrameView::sendResizeEvent):
2577 Factored out dispatch of the resize event after layout so we can call it on a timer
2578 instead of immediately while live window resize is active.
2580 (WebCore::FrameView::FrameView):
2581 (WebCore::FrameView::performPostLayoutTasks):
2582 (WebCore::FrameView::delayedResizeEventTimerFired):
2583 (WebCore::FrameView::willEndLiveResize):
2584 (WebCore::FrameView::scheduleResizeEvent):
2586 * platform/ScrollableArea.h:
2588 Made willStartLiveResize() and willEndLiveResize() virtual so we can override
2591 2013-04-09 Jeff Rogers <jrogers@rim.com>
2593 Add webp to supported image mime types if WEBP feature is enabled/used
2594 https://bugs.webkit.org/show_bug.cgi?id=112819
2596 Reviewed by Darin Adler.
2598 Add WebP to list of supported image types in MIMETypeRegistry if enabled.
2600 No new tests: WebP image decoding already covered by exisiting tests.
2602 * platform/MIMETypeRegistry.cpp:
2603 (WebCore::initializeSupportedImageMIMETypes):
2605 2013-04-09 Arnaud Renevier <a.renevier@sisa.samsung.com>
2607 Whitespace in particular source code changes rendering; does not in Firefox
2608 https://bugs.webkit.org/show_bug.cgi?id=100943
2610 Reviewed by Darin Adler.
2612 A render inline which requires a line box is considered a possible
2613 trailing object. So, ensureLineBoxInsideIgnoredSpaces will be called
2614 for it, even if it is placed after a text render ending with a single
2617 Tests: fast/text/whitespace/trailing-space-before-empty-span-1.html
2618 fast/text/whitespace/trailing-space-before-empty-span-2.html
2620 * rendering/RenderBlockLineLayout.cpp:
2622 (WebCore::TrailingObjects::appendBoxIfNeeded):
2623 (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
2625 2013-04-09 Andrei Bucur <abucur@adobe.com>
2627 Use DOM ordering for list counts
2628 https://bugs.webkit.org/show_bug.cgi?id=110352
2630 Reviewed by Elliott Sprehn.
2632 Currently the list items ordering is made by traversing the render tree. This gives bad results for:
2633 - list items flown inside regions because they are not rendered as descendants of their DOM list ancestors.
2634 - list items matched to insertion points inside a shadow tree. The insertion point may be a child of a
2635 list so the numbering gets broken.
2637 To implement correct DOM ordering I've taken into account the fact that pseudo-elements can have display: list-item
2638 so they should be included when traversing the DOM tree. I've added helper methods on the NodeTraversal
2639 namespace that should allow easily traversing the tree including the pseudo-elements (e.g. firstChildWithPseudo
2640 for an element with pseudo-before will return the before PseudoElement). Using these helper methods I've implemented
2641 pre-order traversal methods aware of the pseudo-elements.
2642 An effect of this change is how the list items inside shadow tree update their counting. With the patch, if there's
2643 no <ol> or <ul> element on the ancestor chain of a <li> element to the shadow root, the list node will be considered the
2644 first parent of the <li> or the shadow root if there is no ancestor.
2645 The RenderListItem class now makes use of this new method of traversal, replacing the one based on the render tree.
2646 To simplify the CSS counters implementation, I've changed the traversal functions inside RenderCounter to also make use
2647 of this method. The CSS counters and the list items now have the same traversal algorithm.
2649 In later patches I'll add tests that should cover the regions and shadow DOM use cases.
2650 Tests bug for shadow DOM: https://bugs.webkit.org/show_bug.cgi?id=113193
2651 Tests bug for regions: https://bugs.webkit.org/show_bug.cgi?id=103975
2653 Tests: no new tests is this patch; added the correct expectations for fast/lists/positioned-count-crash.html
2654 and fast/dom/shadow/shadow-and-list-elements.html
2657 (WebCore::Node::pseudoAwarePreviousSibling):
2659 (WebCore::Node::pseudoAwareNextSibling):
2660 (WebCore::Node::pseudoAwareFirstChild):
2661 (WebCore::Node::pseudoAwareLastChild):
2664 * dom/NodeTraversal.cpp:
2666 (WebCore::NodeTraversal::previousIncludingPseudo):
2668 (WebCore::NodeTraversal::nextIncludingPseudo):
2669 (WebCore::NodeTraversal::nextIncludingPseudoSkippingChildren):
2670 * dom/NodeTraversal.h:
2673 (WebCore::ElementTraversal::previousIncludingPseudo):
2674 (WebCore::ElementTraversal::nextIncludingPseudo):
2675 (WebCore::ElementTraversal::nextIncludingPseudoSkippingChildren):
2676 (WebCore::ElementTraversal::pseudoAwarePreviousSibling):
2677 * html/HTMLLIElement.cpp:
2678 (WebCore::HTMLLIElement::attach):
2679 * html/HTMLOListElement.cpp:
2680 (WebCore::HTMLOListElement::updateItemValues):
2681 (WebCore::HTMLOListElement::recalculateItemCount):
2682 * rendering/RenderCounter.cpp:
2683 (WebCore::previousInPreOrder):
2684 (WebCore::previousSiblingOrParent):
2685 (WebCore::parentElement):
2686 (WebCore::nextInPreOrder):
2687 * rendering/RenderListItem.cpp:
2689 (WebCore::enclosingList):
2690 (WebCore::RenderListItem::nextListItem):
2691 (WebCore::previousListItem):
2692 (WebCore::RenderListItem::calcValue):
2693 (WebCore::RenderListItem::explicitValueChanged):
2694 (WebCore::previousOrNextItem):
2695 (WebCore::RenderListItem::updateListMarkerNumbers):
2696 * rendering/RenderListItem.h:
2699 2013-04-09 Bruno de Oliveira Abinader <bruno.abinader@basyskom.com>
2701 [Texmap] TextureMapperLayer refactor for readiblity
2702 https://bugs.webkit.org/show_bug.cgi?id=114278
2704 Reviewed by Noam Rosenthal.
2706 Removes non-needed return values, function parameters and changes
2707 boolean values with enums for readibility.
2709 No behavioral changes, thus no tests.
2711 * platform/graphics/texmap/TextureMapperLayer.cpp:
2712 (WebCore::TextureMapperLayer::computeTransformsRecursive):
2713 (WebCore::TextureMapperLayer::paintSelf):
2714 (WebCore::TextureMapperLayer::sortByZOrder):
2715 (WebCore::TextureMapperLayer::computeOverlapRegions):
2716 (WebCore::TextureMapperLayer::paintUsingOverlapRegions):
2717 (WebCore::commitSurface):
2718 (WebCore::TextureMapperLayer::paintWithIntermediateSurface):
2719 (WebCore::TextureMapperLayer::paintRecursive):
2720 * platform/graphics/texmap/TextureMapperLayer.h:
2721 (TextureMapperLayer):
2723 2013-04-09 Lamarque V. Souza <Lamarque.Souza@basyskom.com>
2725 [WebSocket] Ignore incoming message in CLOSING state
2726 https://bugs.webkit.org/show_bug.cgi?id=85934
2728 Reviewed by Kent Tamura.
2730 Change WebSocket implementation to suit the new WebSocket API, which
2731 states that we should ignore messages in CLOSING state.
2733 No new tests, updating existing tests.
2735 * Modules/websockets/WebSocket.cpp:
2736 (WebCore::WebSocket::didReceiveMessage):
2738 2013-04-09 Seokju Kwon <seokju.kwon@gmail.com>
2740 Web Inspector: Add Localized strings after r144154 and r135127
2741 https://bugs.webkit.org/show_bug.cgi?id=114269
2743 Reviewed by Timothy Hatcher.
2745 No new tests, no behavior change.
2747 * English.lproj/localizedStrings.js:
2749 2013-04-09 Antti Koivisto <antti@apple.com>
2751 Throttle compositing layer flushes in subframes
2752 https://bugs.webkit.org/show_bug.cgi?id=114267
2754 Reviewed by Andreas Kling.
2756 Throttle compositing layer flushes in all frames, not just the main one.
2758 This especially reduces flushes/repaints generated by ads in iframes.
2760 * loader/FrameLoader.cpp:
2761 (WebCore::FrameLoader::loadProgressingStatusChanged):
2762 * page/FrameView.cpp:
2763 (WebCore::FrameView::updateLayerFlushThrottlingInAllFrames):
2766 2013-04-09 Suchit Agrawal <a.suchit@samsung.com>
2768 Table border doesn't show up
2769 https://bugs.webkit.org/show_bug.cgi?id=13709
2771 Reviewed by Antti Koivisto.
2773 Border issue is fixed when border width is less than 0.8pt
2775 Border width is stored as unsigned. Border width (specified by
2776 author) is converted into pixels and some times this pixel value
2777 goes less than 1px. In this case, border width becomes 0px when
2778 pixel value (double type) assigned to unsigned type.
2779 Border width should not fall to 0px unless it is specified by
2782 Test: fast/borders/border-width-less-then-a-unit-of-pt.html
2784 * css/StyleBuilder.cpp:
2785 ApplyPropetyComputeLength class is replaced with 3 classes :
2786 ApplyPropertyComputeBorderWidth, ApplyPropertyComputeTextSpacing
2787 and ApplyPropertyComputeTransformOriginZ.
2789 (WebCore::ApplyPropertyComputeBorderWidth::applyValue):
2790 (WebCore::ApplyPropertyComputeBorderWidth::createHandler):
2791 This class handles all width properties like border, outline,
2792 etc. These all properties stores value in integer types.
2793 Pixel value rounded of to 1px if value less than 1px and greater
2797 (ApplyPropertyComputeTextSpacing):
2798 (WebCore::ApplyPropertyComputeTextSpacing::setValue):
2799 (WebCore::ApplyPropertyComputeTextSpacing::applyValue):
2800 (WebCore::ApplyPropertyComputeTextSpacing::createHandler):
2801 This class handles all spacing properties like word-spacing,
2804 (ApplyPropertyComputeTransformOriginZ):
2805 (WebCore::ApplyPropertyComputeTransformOriginZ::setValue):
2806 (WebCore::ApplyPropertyComputeTransformOriginZ::applyValue):
2807 (WebCore::ApplyPropertyComputeTransformOriginZ::createHandler):
2808 This class handles TransformOriginZ Property.
2810 (WebCore::StyleBuilder::StyleBuilder):
2811 ApplyProprtyComputeLength class usage changed with defined new
2812 classes as per class definition.
2814 2013-04-09 Gabor Loki <loki@webkit.org>
2816 Initialization skipped error on WinCario after r147643
2817 https://bugs.webkit.org/show_bug.cgi?id=114258
2819 Reviewed by Csaba Osztrogonác.
2821 Build fix. Adding extra block statement to avoid error C2362 on WinCario
2823 * platform/win/DragImageCairoWin.cpp:
2824 (WebCore::createDragImageFromImage):
2826 2013-04-09 Jinwoo Song <jinwoo7.song@samsung.com>
2828 [WK2] Remove build warnings for unused parameters
2829 https://bugs.webkit.org/show_bug.cgi?id=114234
2831 Reviewed by Andreas Kling.
2833 Fix build warnings -Wunused-parameter.
2835 * Modules/indexeddb/IDBBackingStore.cpp:
2836 (WebCore::IDBBackingStore::openInMemory):
2837 * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
2838 (WebCore::CreateIndexAbortOperation::perform):
2839 (WebCore::DeleteIndexAbortOperation::perform):
2840 (WebCore::CreateObjectStoreAbortOperation::perform):
2841 (WebCore::DeleteObjectStoreAbortOperation::perform):
2842 (WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::perform):
2843 * Modules/indexeddb/IDBLevelDBCoding.cpp:
2844 (WebCore::IDBLevelDBCoding::decodeBool):
2845 (WebCore::IDBLevelDBCoding::KeyPrefix::KeyPrefix):
2846 * Modules/indexeddb/IDBLevelDBCoding.h:
2847 (WebCore::IDBLevelDBCoding::encodeIntSafely):
2848 * bindings/js/IDBBindingUtilities.cpp:
2850 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
2851 (WebCore::MediaPlayerPrivateGStreamerBase::createVideoSink):
2852 * platform/leveldb/LevelDBDatabase.cpp:
2853 (WebCore::ComparatorAdapter::FindShortestSeparator):
2854 (WebCore::ComparatorAdapter::FindShortSuccessor):
2856 2013-04-09 Thiago Marcos P. Santos <thiago.santos@intel.com>
2858 [WK2] Drop WebProcess capabilities on Linux using seccomp filters
2859 https://bugs.webkit.org/show_bug.cgi?id=89875
2861 Reviewed by Maciej Stachowiak.
2863 Make the DATA_DIR global since it is now needed for WebCore and WebKit2.
2864 It is now used to set a sandbox policy for the EFL port.
2866 * PlatformEfl.cmake:
2868 2013-04-08 Ryosuke Niwa <rniwa@webkit.org>
2870 Remove WebCore.gyp/gypi
2871 https://bugs.webkit.org/show_bug.cgi?id=114239
2873 Reviewed by Benjamin Poulain.
2875 * WebCore.gyp: Removed.
2876 * WebCore.gyp/.gitignore: Removed.
2877 * WebCore.gyp/ConvertFileToHeaderWithCharacterArray.gypi: Removed.
2878 * WebCore.gyp/MakeNames.gypi: Removed.
2879 * WebCore.gyp/WebCore.gyp: Removed.
2880 * WebCore.gyp/mac: Removed.
2881 * WebCore.gyp/mac/adjust_visibility.sh: Removed.
2882 * WebCore.gyp/mac/check_objc_rename.sh: Removed.
2883 * WebCore.gyp/scripts: Removed.
2884 * WebCore.gyp/scripts/action_csspropertynames.py: Removed.
2885 * WebCore.gyp/scripts/action_cssvaluekeywords.py: Removed.
2886 * WebCore.gyp/scripts/action_derivedsourcesallinone.py: Removed.
2887 * WebCore.gyp/scripts/action_makenames.py: Removed.
2888 * WebCore.gyp/scripts/action_useragentstylesheets.py: Removed.
2889 * WebCore.gyp/scripts/rule_bison.py: Removed.
2890 * WebCore.gyp/scripts/supplemental_idl_files.py: Removed.
2891 * WebCore.gypi: Removed.
2893 2013-04-08 Mihai Maerean <mmaerean@adobe.com>
2895 Rollout r147756: performance regression
2896 https://bugs.webkit.org/show_bug.cgi?id=114176
2898 Reviewed by Alexis Menard.
2900 Rolling out the patch for https://bugs.webkit.org/show_bug.cgi?id=74144 "[CSS Regions] Elements in a region
2901 should be assignable to a named flow" because of the performance regression in Parser/html5-full-render.html .
2903 No new tests (because this is a rollout patch).
2907 * dom/NodeRenderingContext.cpp:
2908 (WebCore::NodeRenderingContext::parentRenderer):
2909 (WebCore::NodeRenderingContext::shouldCreateRenderer):
2910 (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
2911 * dom/NodeRenderingContext.h:
2912 * dom/PseudoElement.h:
2914 (WebCore::Text::textRendererIsNeeded):
2915 (WebCore::Text::updateTextRenderer):
2917 * rendering/FlowThreadController.cpp:
2918 * rendering/FlowThreadController.h:
2919 * rendering/RenderObject.h:
2920 * rendering/RenderRegion.h:
2921 * svg/SVGElement.cpp:
2924 2013-04-08 Benjamin Poulain <benjamin@webkit.org>
2926 Remove HTML Notification
2927 https://bugs.webkit.org/show_bug.cgi?id=114231
2929 Reviewed by Ryosuke Niwa.
2931 The feature is dead. It was only kept in the tree because of chromium.
2933 * Configurations/FeatureDefines.xcconfig:
2934 * Modules/notifications/Notification.cpp:
2936 (WebCore::Notification::Notification):
2937 * Modules/notifications/Notification.h:
2939 * Modules/notifications/NotificationCenter.h:
2940 (NotificationCenter):
2941 * Modules/notifications/NotificationCenter.idl:
2942 * page/FeatureObserver.h:
2944 2013-04-08 Dean Jackson <dino@apple.com>
2946 Don't try to remove a non-existent snapshot
2947 https://bugs.webkit.org/show_bug.cgi?id=114226
2948 <rdar://problem/13604480>
2950 Reviewed by Darin Adler.
2952 We don't need to trigger the timer to remove a snapshot
2953 if there was never a snapshot displayed.
2955 * html/HTMLPlugInImageElement.cpp:
2956 (WebCore::HTMLPlugInImageElement::setDisplayState): Detect if we're moving from the DisplayingSnapshot state.
2957 (WebCore::HTMLPlugInImageElement::removeSnapshotTimerFired): Guard against a missing renderer.
2959 2013-04-08 Patrick Gansterer <paroga@webkit.org>
2961 Do not define CAN_THEME_URL_ICON for PLATFORM(WIN_CAIRO)
2962 https://bugs.webkit.org/show_bug.cgi?id=108444
2964 Reviewed by Darin Adler.
2966 Image::loadPlatformResource("urlIcon") returns nothing
2967 since r30961 on Windows which makes the code useless.
2969 * loader/icon/IconDatabase.cpp:
2971 2013-04-05 Roger Fong <roger_fong@apple.com>
2975 * platform/win/DragImageWin.cpp:
2976 (WebCore::createDragImageIconForCachedImageFilename):
2978 2013-04-08 Geoffrey Garen <ggaren@apple.com>
2980 Stop #include-ing all of JavaScriptCore in every DOM-related file
2981 https://bugs.webkit.org/show_bug.cgi?id=114220
2983 Reviewed by Sam Weinig.
2985 I separated ScriptWrappableInlines.h from ScriptWrappable.h so
2986 WebCore data types that inherit from ScriptWrappable don't
2987 have to #include all of the infrastructure for accessing that data member.
2989 * ForwardingHeaders/heap/PassWeak.h: Added.
2990 * ForwardingHeaders/heap/WeakInlines.h: Added.
2991 * WebCore.xcodeproj/project.pbxproj:
2992 * bindings/js/DOMWrapperWorld.h:
2993 * bindings/js/JSDOMBinding.h:
2995 * bindings/js/JSEventListener.h:
2996 * bindings/js/JSMutationCallback.cpp:
2997 * bindings/js/JSNodeFilterCondition.h:
2998 * bindings/js/ScriptWrappable.h:
3002 * bindings/js/ScriptWrappableInlines.h: Added.
3004 (WebCore::ScriptWrappable::wrapper):
3005 (WebCore::ScriptWrappable::setWrapper):
3006 (WebCore::ScriptWrappable::clearWrapper):
3007 * bridge/qt/qt_instance.h:
3008 * bridge/qt/qt_runtime.h:
3009 * bridge/runtime_root.cpp:
3010 * bridge/runtime_root.h:
3011 * css/StylePropertySet.cpp:
3012 * dom/LiveNodeList.cpp:
3013 (WebCore::LiveNodeListBase::reportMemoryUsage):
3015 (WebCore::Node::reportMemoryUsage):
3016 * inspector/InspectorDebuggerAgent.cpp:
3017 * inspector/NetworkResourcesData.cpp:
3018 * loader/cache/CachedSVGDocument.cpp:
3019 * xml/XMLHttpRequest.cpp:
3020 (WebCore::XMLHttpRequest::reportMemoryUsage):
3022 2013-04-08 Tiancheng Jiang <tijiang@rim.com>
3024 [BlackBerry] Clean up render theme code.
3025 https://bugs.webkit.org/show_bug.cgi?id=114216
3027 Reviewed by Rob Buis.
3029 BlackBerry PR 323062
3031 Clean up redundant code.
3033 * platform/blackberry/RenderThemeBlackBerry.cpp:
3035 (WebCore::RenderThemeBlackBerry::paintSliderTrack):
3036 * platform/blackberry/RenderThemeBlackBerry.h:
3037 (RenderThemeBlackBerry):
3039 2013-04-08 Arunprasad Rajkumar <arunprasadr@nds.com>
3041 Call Netscape Plugin's toString() and valueOf() instead of providing default implementation
3042 https://bugs.webkit.org/show_bug.cgi?id=113139
3044 Reviewed by Anders Carlsson.
3046 Tests: plugins/npruntime/tostring.html
3047 plugins/npruntime/valueof.html
3049 * bridge/c/c_instance.cpp:
3050 (JSC::Bindings::CInstance::~CInstance):
3051 (JSC::Bindings::CInstance::invokeMethod):
3052 (JSC::Bindings::CInstance::invokeDefaultMethod):
3054 (JSC::Bindings::CInstance::invokeConstruct):
3055 (JSC::Bindings::CInstance::stringValue):
3056 (JSC::Bindings::CInstance::booleanValue):
3057 (JSC::Bindings::CInstance::valueOf):
3058 (JSC::Bindings::CInstance::toJSPrimitive):
3059 * bridge/c/c_instance.h:
3062 2013-04-08 Tim Horton <timothy_horton@apple.com>
3064 REGRESSION (r138858): Crash in WebCore::FrameLoader::~FrameLoader() when opening page in a background tab
3065 https://bugs.webkit.org/show_bug.cgi?id=109935
3066 <rdar://problem/13225963>
3068 Reviewed by Brady Eidson.
3070 Previously, we were deciding if a Page could go into
3071 the PageCache by blacklisting certain load types. Instead,
3072 whitelist the load types that we know can go into the cache,
3073 so that newly-added load types are not cached unless
3074 that is explicitly desired.
3076 The crash occurs when a page which is actively loading
3077 is put into the page cache while doing a redirect with
3078 FrameLoadTypeRedirectWithLockedBackForwardList (note that
3079 this is a redirect that was not covered in the blacklist),
3080 and then promptly removed from the page cache, resulting
3081 in resources from the redirect target (the now-active page)
3082 being incorrectly destroyed.
3084 No new tests, only known crash repro case is extremely
3085 timing dependent (and only happens in WebKit2, with tiled
3086 drawing, in background tabs).
3088 * history/PageCache.cpp:
3089 (WebCore::PageCache::canCache):
3091 2013-04-08 Anders Carlsson <andersca@apple.com>
3095 * platform/network/ResourceHandle.cpp:
3096 (WebCore::ResourceHandle::continueDidReceiveResponse):
3098 2013-04-08 Anders Carlsson <andersca@apple.com>
3100 Add an async version of ResourceHandle::didReceiveResponse
3101 https://bugs.webkit.org/show_bug.cgi?id=114215
3103 Reviewed by Sam Weinig.
3105 In order to support converting NSURLConnections to NSURLDownloads when using the network process
3106 we need an async version of didReceiveResponse.
3109 * platform/network/ResourceHandleClient.cpp:
3110 (WebCore::ResourceHandleClient::didReceiveResponseAsync):
3111 Just call continueDidReceiveResponse().
3113 * platform/network/mac/ResourceHandleMac.mm:
3114 (WebCore::ResourceHandle::continueWillSendRequest):
3115 Split up a single condition in two, making it easier to see which assertion fails.
3117 (WebCore::ResourceHandle::continueDidReceiveResponse):
3118 Call -[WebCoreResourceHandleAsOperationQueueDelegate continueDidReceiveResponse].
3120 (WebCore::ResourceHandle::continueShouldUseCredentialStorage):
3121 (WebCore::ResourceHandle::continueCanAuthenticateAgainstProtectionSpace):
3122 (WebCore::ResourceHandle::continueWillCacheResponse):
3123 Split up a single condition in two, making it easier to see which assertion fails.
3125 * platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.h:
3126 * platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm:
3127 (-[WebCoreResourceHandleAsOperationQueueDelegate continueDidReceiveResponse]):
3128 Signal the semaphore.
3130 (-[WebCoreResourceHandleAsOperationQueueDelegate connection:didReceiveResponse:]):
3131 Call didReceiveResponseAsync on the main thread and wait on the semaphore.
3133 2013-04-08 Beth Dakin <bdakin@apple.com>
3135 Crash in ScrollingCoordinator::mainThreadScrollingReasons() when going back
3136 https://bugs.webkit.org/show_bug.cgi?id=114214
3138 <rdar://problem/13208616>
3140 Reviewed by Anders Carlsson.
3142 When a page is restoring from the page cache, the mainFrame can have a null
3143 Document. So we should null-check the Document here.
3145 * page/scrolling/ScrollingCoordinator.cpp:
3146 (WebCore::ScrollingCoordinator::mainThreadScrollingReasons):
3148 2013-04-08 Andrei Bucur <abucur@adobe.com>
3150 Simplify ContainerNode::removeChildren
3151 https://bugs.webkit.org/show_bug.cgi?id=113517
3153 Reviewed by Darin Adler.
3155 The patch is based on the work made by Elliott Sprehn. He kindly agreed
3156 for me to finalize the last bits and pieces of the fix.
3158 Simplify ContainerNode::removeChildren by merging the loops and removing
3159 willRemoveChildren. This removes two traversals of the children, avoids
3160 refing and derefing all the children once, avoids allocating a second
3161 NodeVector of children, and means we detach() in the same order as
3164 This does mean you can get into an infinite loop with DOMNodeRemoved
3165 listeners by continously adding nodes but this is true in all other browsers
3166 and the current behavior is bad because it means you don't get notified
3167 of nodes added during removal (which other browsers do notify of). This
3168 patch removes the containerNode.html test that originally tested for this
3169 infinite loop and adds a new one that tests that all nodes get notified.
3171 This makes PerformanceTests/Parser/innerHTML-setter.html 2-6% faster.
3173 There's also a new test verifying ranges remain consistent if modified
3174 inside an mutation event handler. Without the patch it's possible to create
3175 a range with boundaries outside of the DOM tree.
3177 Tests: fast/dom/Range/range-remove-children-event.html
3178 fast/events/mutation-during-innerHTML.html
3180 * dom/ContainerNode.cpp:
3181 (WebCore::ContainerNode::removeChildren):
3183 * dom/Document.h: nodeChildrenWillBeRemoved is not needed any more.
3185 * dom/Range.h: nodeChildrenWillBeRemoved is not needed any more.
3187 2013-04-06 Simon Fraser <simon.fraser@apple.com>
3189 Remove some #includes in headers in rendering code
3190 https://bugs.webkit.org/show_bug.cgi?id=114079
3192 Reviewed by Sam Weinig.
3194 Clean up #includes in RenderObject, RenderLayer etc.
3195 Moved makeMatrixRenderable() into RenderLayer.app, allowing
3196 the removal of a TransformationMatrix.h include.
3198 Make some RenderLayer functions that deal with filters not inline,
3199 to avoid including RenderLayerFilterInfo.h.
3201 * platform/graphics/GraphicsLayer.h:
3202 * platform/graphics/ImageOrientation.cpp:
3203 * platform/graphics/cairo/GraphicsContextCairo.cpp:
3204 * platform/graphics/qt/GraphicsContextQt.cpp:
3205 * platform/graphics/transforms/AffineTransform.cpp:
3206 * platform/graphics/transforms/AffineTransform.h:
3207 * rendering/RenderBoxModelObject.h:
3208 * rendering/RenderLayer.cpp:
3209 (WebCore::makeMatrixRenderable):
3210 (WebCore::RenderLayer::filterRenderer):
3211 (WebCore::RenderLayer::filterInfo):
3212 (WebCore::RenderLayer::ensureFilterInfo):
3213 (WebCore::RenderLayer::removeFilterInfoIfNeeded):
3214 * rendering/RenderLayer.h:
3215 * rendering/RenderLayerBacking.h:
3216 * rendering/RenderLineBoxList.h:
3217 * rendering/RenderObject.h:
3219 2013-04-08 Robert Hogan <robert@webkit.org>
3221 Unreviewed, rolling out r147850.
3222 http://trac.webkit.org/changeset/147850
3223 https://bugs.webkit.org/show_bug.cgi?id=113706
3225 Changeset crossed paths with 147505, which is the same fix.
3227 * rendering/RenderBlockLineLayout.cpp:
3228 (WebCore::inlineLogicalWidth):
3230 2013-04-08 Alexey Proskuryakov <ap@apple.com>
3232 <rdar://problem/12834449> Crashes in WebSocketChannel::processFrame when processing a ping
3233 https://bugs.webkit.org/show_bug.cgi?id=114178
3235 Reviewed by Brady Eidson.
3237 No test, I could never reproduce even manually.
3239 Calling enqueueRawFrame() could change incoming buffer, so a subsequent skipBuffer()
3240 would operate on wrong assumptions. This happened because enqueueRawFrame() actually
3241 tried to process the queue, and send failure sometimed clears m_buffer.
3243 Fixing this by decoupling enqueuing from sending, and making sure that skipBuffer()
3244 in ping frame processing case is performed at a safe time.
3246 * Modules/websockets/WebSocketChannel.cpp:
3247 (WebCore::WebSocketChannel::send):
3248 (WebCore::WebSocketChannel::startClosingHandshake):
3249 (WebCore::WebSocketChannel::processFrame):
3250 (WebCore::WebSocketChannel::enqueueTextFrame):
3251 (WebCore::WebSocketChannel::enqueueRawFrame):
3252 (WebCore::WebSocketChannel::enqueueBlobFrame):
3254 2013-04-08 Max Vujovic <mvujovic@adobe.com>
3256 REGRESSION (r147502): Animations of CA filters broken
3257 https://bugs.webkit.org/show_bug.cgi?id=114067
3259 Reviewed by Dean Jackson.
3261 Revert r147502 [1] because it broke CA filter animations.
3263 [1]: http://trac.webkit.org/changeset/147502
3265 * platform/graphics/IntRectExtent.h:
3266 (WebCore::IntRectExtent::isZero):
3268 * rendering/RenderLayer.cpp:
3269 (WebCore::RenderLayer::needsCompositingLayersRebuiltForOverflow):
3271 (WebCore::RenderLayer::styleChanged):
3272 * rendering/RenderLayer.h:
3274 * rendering/RenderLayerBacking.cpp:
3275 (WebCore::RenderLayerBacking::updateFilters):
3276 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
3277 * rendering/RenderLayerBacking.h:
3278 (RenderLayerBacking):
3279 * rendering/RenderLayerCompositor.cpp:
3280 (WebCore::RenderLayerCompositor::calculateCompositedBounds):
3282 2013-04-08 Jocelyn Turcotte <jocelyn.turcotte@digia.com>
3284 [Qt] Avoid "QFont::setPixelSize: Pixel size <= 0 (0)"
3285 https://bugs.webkit.org/show_bug.cgi?id=114175
3287 Reviewed by Allan Sandfeld Jensen.
3289 QFont doesn't support a 0-size but WebCore does.
3290 Leave our QFont in its default state in this case to avoid the warning.
3292 * platform/graphics/qt/FontPlatformDataQt.cpp:
3293 (WebCore::FontPlatformData::FontPlatformData):
3295 2013-04-08 Yi Shen <max.hong.shen@gmail.com>
3297 Counter still gets incremented when counter-increment is set to none
3298 https://bugs.webkit.org/show_bug.cgi?id=84985
3300 Reviewed by Darin Adler.
3302 When the counter-increment is set to none, no counters are incremented.
3304 Tests: New test cases added in fast/css/counters/counter-increment-tests.htm
3306 * css/StyleBuilder.cpp:
3307 (WebCore::ApplyPropertyCounter::applyValue):
3309 2013-04-08 Douglas Stockwell <dstockwell@chromium.org>
3311 Crash in WebCore::ElementRuleCollector::collectMatchingRulesForList
3312 https://bugs.webkit.org/show_bug.cgi?id=113458
3314 Reviewed by Darin Adler.
3316 A stylesheet which has been invalidated (type changed from "" or
3317 "text/css") was not correctly removed from the list of active
3318 style sheets when its children are changed.
3320 This change releases StyleElement::m_sheet in advance of calling
3321 DocumentStyleSheetCollection::updateActiveStyleSheets.
3323 (StyleElement::clearSheet calls CSSStyleSheet::clearOwnerNode calls
3324 CSSStyleSheet::didMutate calls Document::styleResolverChanged calls
3325 DocumentStyleSheetCollection::updateActiveStyleSheets)
3327 Test: fast/css/style-element-invalidation-crash.html
3329 * dom/StyleElement.cpp:
3330 (WebCore::StyleElement::clearSheet): Release m_sheet before we
3331 trigger an update of the active style sheets.
3333 2013-04-08 Carlos Garcia Campos <cgarcia@igalia.com>
3335 [GTK] DOM objects created wrapping a base class have incorrect GObject type
3336 https://bugs.webkit.org/show_bug.cgi?id=113132
3338 Reviewed by Gustavo Noronha Silva.
3340 Some of the DOM methods can create a concrete instance of another
3341 object, but return a base class. GObject bindings provide custom
3342 kit implementations for Node, Element, Event and EvenTarget, so
3343 any concrete HTMLElement wrapped as an HTMLElement ends up
3344 wrapping the right WebCore object but in the wrong GObject type.
3345 This affects not only HTMLElements, but any polymorphic object
3346 wrapped using a base class.
3347 This patch changes the way objects are created, so that all
3348 classes have their own kit implementation, but for polymorphic
3349 objects the kit implementation of the base class is always
3350 used. The kit method of polymorphic base classes use a generic
3351 wrap method instead of the wrapFoo method like all other
3352 classes. In the static code we provide the implementation of the
3353 generic wrap method for every polimorphic base class, falling back
3354 to their wrapFoo method if the concrete object can't be used to
3356 Both WebKitDOMBinding and WebKitHTMLElementWrapperFactory now provide
3357 implementations of wrap and have been renamed to WebKitDOMPrivate
3358 and WebKitDOMHTMLPrivate.
3360 * bindings/gobject/GNUmakefile.am:
3361 * bindings/gobject/WebKitDOMBinding.cpp: Removed.
3362 * bindings/gobject/WebKitDOMEventTarget.cpp:
3363 (WebKit::kit): Moved kit implementation from WebKitDOMBinding for
3364 consistency with all other objects that have their own kit.
3365 (WebKit::core): Updated to match the core implementation fo all
3367 * bindings/gobject/WebKitDOMEventTargetPrivate.h:
3370 * bindings/gobject/WebKitDOMHTMLPrivate.cpp: Added.
3371 (WebKit): Use preprocessor macros to define and set the wrap
3372 functions of all HTML elements, removing a lot of boilerplate code
3373 and making it easier to add new wrap functions in the future.
3375 * bindings/gobject/WebKitDOMHTMLPrivate.h: Renamed from Source/WebCore/bindings/gobject/WebKitHTMLElementWrapperFactory.h.
3378 * bindings/gobject/WebKitDOMObject.cpp:
3379 * bindings/gobject/WebKitDOMPrivate.cpp: Added.
3382 * bindings/gobject/WebKitDOMPrivate.h: Renamed from Source/WebCore/bindings/gobject/WebKitDOMBinding.h.
3385 * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp: Removed.
3386 * bindings/scripts/CodeGeneratorGObject.pm:
3387 (IsBaseType): Helper function to check if a type is a base class.
3388 (GetBaseClass): Helper function to get the base class for a given
3390 (GenerateFunction): Remove special case for EventTarget since the
3391 kit prototype of EventTarget is in its private header like all
3393 (GenerateCFile): Add a kit implementation for all objects.
3394 (IsPolymorphic): Helper function to check if the given type is the
3395 base class of a polymorphic object.
3396 (Generate): Include the private header of the base class for
3397 polymorphic objects.
3398 (WriteData): Remove the special case for WebKitDOMNode since now
3399 all objects has a kit method.
3400 * bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp:
3402 * bindings/scripts/test/GObject/WebKitDOMFloat64ArrayPrivate.h:
3404 * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.cpp:
3405 * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObjectPrivate.h:
3407 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
3408 * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
3410 * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.cpp:
3411 * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetterPrivate.h:
3413 * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.cpp:
3414 * bindings/scripts/test/GObject/WebKitDOMTestEventConstructorPrivate.h:
3416 * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:
3417 * bindings/scripts/test/GObject/WebKitDOMTestEventTargetPrivate.h:
3419 * bindings/scripts/test/GObject/WebKitDOMTestException.cpp:
3420 * bindings/scripts/test/GObject/WebKitDOMTestExceptionPrivate.h:
3422 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
3423 * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
3425 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
3426 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
3428 * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.cpp:
3429 * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructorPrivate.h:
3431 * bindings/scripts/test/GObject/WebKitDOMTestNode.cpp:
3433 * bindings/scripts/test/GObject/WebKitDOMTestNodePrivate.h:
3435 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
3436 * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
3438 * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.cpp:
3439 * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructorsPrivate.h:
3441 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
3442 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
3444 * bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp:
3445 * bindings/scripts/test/GObject/WebKitDOMTestTypedefsPrivate.h:
3448 2013-04-08 Andras Becsi <andras.becsi@digia.com>
3450 Fix the build with strict GCC 4.8
3452 Unreviewed build fix.
3454 Initialize dragImage to suppress GCC's warning about it being possibly used uninitialized,
3455 which results is a build failure with GCC 4.8 that sets -Werror=maybe-uninitialized.
3457 No new tests needed.
3459 * page/DragController.cpp:
3460 (WebCore::DragController::doImageDrag):
3462 2013-04-08 Zan Dobersek <zdobersek@igalia.com>
3464 Remove the unused LayoutTestSupport class
3465 https://bugs.webkit.org/show_bug.cgi?id=114170
3467 Reviewed by Alexey Proskuryakov.
3469 The LayoutTestSupport class is not used by any port anywhere in the code and should be removed.
3471 No new tests - no changes in functionality.
3474 * GNUmakefile.list.am:
3476 * WebCore.vcproj/WebCore.vcproj:
3477 * WebCore.vcxproj/WebCore.vcxproj:
3478 * WebCore.vcxproj/WebCore.vcxproj.filters:
3479 * WebCore.xcodeproj/project.pbxproj:
3480 * platform/LayoutTestSupport.cpp: Removed.
3481 * platform/LayoutTestSupport.h: Removed.
3483 2013-04-08 Zan Dobersek <zdobersek@igalia.com>
3485 Remove WebCore::(enable|disable)SecureTextInput methods
3486 https://bugs.webkit.org/show_bug.cgi?id=114126
3488 Reviewed by Alexey Proskuryakov.
3490 Remove the enableSecureTextInput and disableSecureTextInput methods and all the codepaths leading to them.
3491 These were used only by the Chromium port and are as such not required anymore.
3493 No new tests - no changes in functionality.
3495 * GNUmakefile.list.am:
3497 * WebCore.xcodeproj/project.pbxproj:
3499 (WebCore::Document::Document):
3502 * editing/FrameSelection.cpp:
3503 (WebCore::FrameSelection::focusedOrActiveStateChanged):
3504 * editing/FrameSelection.h:
3506 * html/PasswordInputType.cpp:
3507 * html/PasswordInputType.h:
3508 (PasswordInputType):
3510 (WebCore::Frame::setDocument):
3511 * platform/SecureTextInput.h: Removed.
3513 2013-04-08 Jer Noble <jer.noble@apple.com>
3515 Unreviewed build fix; r147892 moved an export definition out of
3516 a protective #ifdef, causing a link error on platforms which do
3517 not define that method.
3521 2013-04-08 Brendan Long <b.long@cablelabs.com>
3523 [Qt] Enable text tracks from track elements
3524 https://bugs.webkit.org/show_bug.cgi?id=113522
3526 Reviewed by Jocelyn Turcotte.
3528 No new tests because they're already there. This just enables the feature.
3531 * bindings/generic/RuntimeEnabledFeatures.cpp:
3533 * platform/qt/LocalizedStringsQt.cpp:
3535 (WebCore::textTrackSubtitlesText):
3536 (WebCore::textTrackOffText):
3537 (WebCore::textTrackNoLabelText):
3539 2013-04-08 Sergio Villar Senin <svillar@igalia.com>
3541 [GTK] Toggle OverWrite mode when pressing the Insert key
3542 https://bugs.webkit.org/show_bug.cgi?id=113384
3544 Reviewed by Martin Robinson.
3546 Perform an OverWrite command as a response to the emission of the
3547 toggle-overwrite signal. Due to the nature of the command it will
3548 only do that when being on a richly editable web content.
3550 * platform/gtk/KeyBindingTranslator.cpp:
3551 (WebCore::toggleOverwriteCallback):
3553 2013-04-08 Seokju Kwon <seokju.kwon@gmail.com>
3555 [BlackBerry] Provide more specific error description for SocketStreamError
3556 https://bugs.webkit.org/show_bug.cgi?id=114134
3558 Reviewed by Rob Buis.
3560 Pass the reason of a failure to SocketStreamError instance
3561 and notify it via SocketStreamHandleClient::didFailSocketStream().
3563 * platform/network/blackberry/SocketStreamError.h:
3564 (WebCore::SocketStreamError::SocketStreamError):
3565 * platform/network/blackberry/SocketStreamHandleBlackBerry.cpp:
3566 (WebCore::SocketStreamHandle::notifyStatusReceived):
3568 2013-04-08 Youenn Fablet <youennf@gmail.com>
3570 [GTK][EFL] HEAD requests changed to GET after 303 redirection
3571 https://bugs.webkit.org/show_bug.cgi?id=110127
3573 Reviewed by Martin Robinson.
3575 Made shouldRedirectAsGET always return false for HEAD requests.
3577 * platform/network/soup/ResourceHandleSoup.cpp:
3578 (WebCore::shouldRedirectAsGET):
3580 2013-04-08 Carlos Garcia Campos <cgarcia@igalia.com>
3582 DragImage should not depend on Frame and CachedImage
3583 https://bugs.webkit.org/show_bug.cgi?id=21357
3585 Reviewed by Sam Weinig.
3587 Remove Frame and CachedImage dependencies from DragImage.
3590 (WebCore): Add forward delcaration for CacheImage since it's not
3591 included anymore in DragImage.h.
3592 * page/DragController.cpp:
3593 (WebCore::DragController::startDrag): Use
3594 Frame::dragImageForSelection() and call
3595 dissolveDragImageToFraction() for the returned DragImage. Pass the
3596 font rendering mode to createDragImageForLink, instead of a Frame
3597 that is only used to get the font rendering mode.
3598 (WebCore::DragController::doImageDrag): Get the suggested filename
3599 for the cached image and pass it to
3600 createDragImageIconForCachedImageFilename().
3601 * platform/DragImage.cpp:
3602 (WebCore::createDragImageForLink): Receive a FontRenderingMode
3604 * platform/DragImage.h:
3605 (WebCore): Remove createDragImageForSelection, change
3606 createDragImageForLink to receive a FontRenderingMode instead of a
3607 frame, and rename createDragImageIconForCachedImage as
3608 createDragImageIconForCachedImageFilename since it nows received
3609 the suggested filename of the cached image.
3610 * platform/blackberry/DragImageBlackBerry.cpp:
3611 (WebCore::createDragImageIconForCachedImageFilename): Adapt to API
3613 * platform/efl/DragImageEfl.cpp:
3614 (WebCore::createDragImageIconForCachedImageFilename): Ditto.
3615 * platform/gtk/DragImageGtk.cpp:
3616 (WebCore::createDragImageIconForCachedImageFilename): Ditto.
3617 * platform/mac/DragImageMac.mm:
3618 (WebCore::dissolveDragImageToFraction): Return early if the passed
3620 (WebCore::createDragImageIconForCachedImageFilename): Adapt to API
3622 (WebCore::createDragImageForLink): Ditto.
3623 * platform/qt/DragImageQt.cpp:
3624 (WebCore::createDragImageIconForCachedImageFilename): Ditto.
3625 * platform/win/DragImageWin.cpp:
3626 (WebCore::createDragImageIconForCachedImageFilename): Ditto.
3627 (WebCore::createDragImageForLink): Ditto.
3628 * platform/wx/DragImageWx.cpp:
3629 (WebCore::createDragImageIconForCachedImageFilename): Ditto.
3631 2013-04-08 Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
3633 [EFL] REGRESSION(r147743): Use the correct `operator new' override in RenderThemeEfl.
3634 https://bugs.webkit.org/show_bug.cgi?id=114166
3636 Reviewed by Alexis Menard.
3638 r147743 disabled GLOBAL_FAST_MALLOC_NEW on the EFL port, but this has
3639 caused some pixel tests in WK1 to crash.
3641 The problem stems from RenderThemeEfl::applyEdjeRTLState() directly
3642 calling `operator new(size_t)' for some allocations.
3643 RefCounted<RenderTheme>, on its turn, has a WTF_MAKE_FAST_ALLOCATED
3644 call which adds some `operator new' overrides to the class. Our direct
3645 calls in applyEdjeRTLState() made the scope resolution rules choose the
3646 WTF_MAKE_FAST_ALLOCATED version (which uses FastMalloc's allocator),
3647 while WTF::deleteOwnedPtr() calls the global `operator delete' (which
3648 uses the system's free() implementation).
3650 * platform/efl/RenderThemeEfl.cpp:
3651 (WebCore::RenderThemeEfl::applyEdjeRTLState): Explicitly choose the
3652 global `operator new' when calling it.
3654 2013-04-07 Benjamin Poulain <benjamin@webkit.org>
3656 Remove the android code from WebCore
3657 https://bugs.webkit.org/show_bug.cgi?id=114136
3659 Reviewed by Anders Carlsson.
3662 * dom/ViewportArguments.cpp:
3664 (WebCore::setViewportFeature):
3665 (WebCore::viewportErrorMessageTemplate):
3666 (WebCore::viewportErrorMessageLevel):
3667 * dom/ViewportArguments.h:
3668 (WebCore::ViewportArguments::ViewportArguments):
3669 (ViewportArguments):
3670 (WebCore::ViewportArguments::operator==):
3671 * editing/EditingBehavior.h:
3672 (WebCore::EditingBehavior::shouldMoveCaretToHorizontalBoundaryWhenPastTopOrBottom):
3673 (WebCore::EditingBehavior::shouldAllowSpellingSuggestionsWithoutSelection):
3674 (WebCore::EditingBehavior::shouldNavigateBackOnBackspace):
3675 * editing/EditingBehaviorTypes.h:
3676 * page/EventHandler.cpp:
3677 (WebCore::EventHandler::handleGestureLongTap):
3678 (WebCore::EventHandler::handleGestureForTextSelectionOrContextMenu):
3679 * page/Settings.cpp:
3681 (WebCore::editingBehaviorTypeForPlatform):
3682 * platform/graphics/FontCache.h:
3684 * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp:
3685 (WebCore::FontPlatformData::getRenderStyleForStrike):
3686 * testing/InternalSettings.cpp:
3687 (WebCore::InternalSettings::setEditingBehavior):
3689 2013-04-07 Oliver Hunt <oliver@apple.com>
3691 Add bounds checking for WTF::Vector::operator[]
3692 https://bugs.webkit.org/show_bug.cgi?id=89600
3694 Reviewed by Filip Pizlo.
3700 2013-04-07 Benjamin Poulain <benjamin@webkit.org>
3702 Do not allocate static AtomicStrings when searching for alternate font names
3703 https://bugs.webkit.org/show_bug.cgi?id=114110
3705 Reviewed by Geoffrey Garen.
3707 FontCache's alternateFamilyName does some font name substitutions
3708 when a font is not found for a given name.
3710 In the vast majority of cases, no substitutions are made and
3711 alternateFamilyName returns the null atom.
3712 Given the usage the function had a couple of problems:
3713 -It created 6 static AtomicString.
3714 -It did a case insensitive comparison with 6 differents strings
3717 This patch aims at solving both issues.
3719 Instead of creating all AtomicString statically, the alternate name
3720 are simply created on the fly as needed. Because the operation is so
3721 unfrequent, and it uses the fast constructor, doing so should not slow
3724 To avoid comparing the input to every string, every time, the length of
3725 the input is first evaluated, and we only do the necessary string comparisons.
3727 On x86_64, this reduces the binary size by 2128 bytes.
3729 * platform/graphics/FontCache.cpp:
3730 (WebCore::familyNameEqualIgnoringCase):
3731 When comparing strings, we know:
3732 -The family name is non null.
3733 -The length of both strings is equal.
3734 -The length is not null.
3735 Make the comparison accordingly.
3737 (WebCore::alternateFamilyName):
3738 (WebCore::FontCache::getCachedFontPlatformData):
3740 2013-04-07 Zan Dobersek <zdobersek@igalia.com>
3742 Remove remaining PLATFORM(CHROMIUM)-guarded code in WebCore
3743 https://bugs.webkit.org/show_bug.cgi?id=114081
3745 Remove the remaining PLATFORM(CHROMIUM) build guards. There are still a couple of guards
3746 that most likely apply only to Chromium, like OS(ANDROID) or USE(SKIA_ON_MAC_CHROMIUM),
3747 but removal of these should go into separate patches.
3749 * bindings/generic/RuntimeEnabledFeatures.cpp:
3752 * history/PageCache.cpp:
3754 (WebCore::logCanCacheFrameDecision):
3755 (WebCore::logCanCachePageDecision):
3756 (WebCore::PageCache::canCache):
3757 * html/HTMLCanvasElement.cpp:
3758 (WebCore::HTMLCanvasElement::getContext):
3759 (WebCore::HTMLCanvasElement::shouldAccelerate):
3760 * html/HTMLCanvasElement.h:
3761 * html/HTMLMediaElement.cpp:
3762 (WebCore::createFileURLForApplicationCacheResource):
3763 (WebCore::HTMLMediaElement::loadResource):
3764 * html/HTMLSelectElement.cpp:
3766 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
3767 * html/MediaDocument.cpp:
3768 (WebCore::MediaDocument::defaultEventHandler):
3769 * html/canvas/EXTDrawBuffers.cpp:
3770 (WebCore::EXTDrawBuffers::satisfiesWebGLRequirements):
3771 * html/canvas/WebGLRenderingContext.cpp:
3773 (WebCore::WebGLRenderingContext::create):
3774 (WebCore::WebGLRenderingContext::WebGLRenderingContext):
3775 (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas):
3776 (WebCore::WebGLRenderingContext::platformLayer):
3777 * inspector/InspectorInstrumentation.cpp:
3779 (WebCore::InspectorInstrumentation::willPaintImpl):
3780 * inspector/InspectorTimelineAgent.cpp:
3781 (WebCore::InspectorTimelineAgent::didBeginFrame):
3782 * loader/DocumentLoader.cpp:
3783 (WebCore::DocumentLoader::notifyFinished):
3784 * page/FeatureObserver.cpp:
3785 (WebCore::FeatureObserver::~FeatureObserver):
3786 * platform/AsyncFileSystem.cpp:
3788 * platform/ContextMenu.h:
3790 * platform/ContextMenuItem.h:
3791 * platform/Cursor.h:
3792 * platform/DragData.cpp:
3794 * platform/DragData.h:
3795 * platform/DragImage.h:
3796 * platform/LocalizedStrings.h:
3798 * platform/Pasteboard.h:
3800 * platform/PlatformExportMacros.h:
3801 * platform/PlatformInstrumentation.h:
3802 (WebCore::PlatformInstrumentation::willDecodeImage):
3803 (WebCore::PlatformInstrumentation::didDecodeImage):
3804 (WebCore::PlatformInstrumentation::willResizeImage):
3805 (WebCore::PlatformInstrumentation::didResizeImage):
3806 * platform/PlatformMenuDescription.h:
3808 * platform/PlatformSpeechSynthesizer.h:
3809 (PlatformSpeechSynthesizer):
3810 * platform/PlatformWheelEvent.h:
3811 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3812 (PlatformWheelEvent):
3813 * platform/ScrollAnimator.cpp:
3815 (WebCore::ScrollAnimator::handleWheelEvent):
3816 * platform/ScrollAnimator.h:
3818 * platform/ScrollAnimatorNone.cpp:
3819 (WebCore::ScrollAnimatorNone::scroll):
3820 (WebCore::ScrollAnimatorNone::animationTimerFired):
3821 * platform/ScrollView.cpp:
3822 (WebCore::ScrollView::updateOverhangAreas):
3823 * platform/ScrollableArea.cpp:
3824 (WebCore::ScrollableArea::scrollPositionChanged):
3825 * platform/Scrollbar.cpp:
3826 * platform/SecureTextInput.cpp: Removed.
3827 * platform/SecureTextInput.h:
3829 * platform/SuddenTermination.h:
3831 * platform/Widget.h:
3833 * platform/graphics/ANGLEWebKitBridge.h:
3834 * platform/graphics/BitmapImage.h:
3835 * platform/graphics/FloatPoint.h:
3837 * platform/graphics/FloatRect.h:
3839 * platform/graphics/FloatSize.h:
3841 * platform/graphics/Font.cpp:
3843 (WebCore::Font::width):
3844 * platform/graphics/Font.h:
3846 * platform/graphics/FontCache.cpp:
3848 * platform/graphics/FontCache.h:
3850 * platform/graphics/FontDescription.h:
3851 * platform/graphics/FontPlatformData.cpp:
3852 * platform/graphics/GlyphBuffer.h:
3854 (WebCore::GlyphBuffer::add):
3855 * platform/graphics/GraphicsContext.cpp:
3856 (WebCore::GraphicsContext::drawImage):
3857 (WebCore::GraphicsContext::drawImageBuffer):
3858 * platform/graphics/GraphicsContext3D.h:
3859 (GraphicsContext3D):
3860 * platform/graphics/GraphicsLayer.h:
3861 (WebCore::GraphicsLayer::supportsBackgroundColorContent):
3862 * platform/graphics/Icon.h:
3864 * platform/graphics/ImageSource.cpp:
3865 * platform/graphics/ImageSource.h:
3867 * platform/graphics/IntRect.h:
3870 * platform/graphics/MediaPlayer.cpp:
3871 * platform/graphics/PlatformLayer.h:
3872 * platform/graphics/SimpleFontData.h:
3875 * platform/graphics/filters/FECustomFilter.cpp:
3876 (WebCore::FECustomFilter::resizeContext):
3877 * platform/graphics/gpu/DrawingBuffer.h:
3880 * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
3881 * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
3882 (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):
3883 * platform/image-decoders/ImageDecoder.h:
3884 * platform/leveldb/LevelDBDatabase.cpp:
3885 (WebCore::LevelDBDatabase::open):
3886 * platform/network/BlobRegistry.cpp:
3887 (WebCore::blobRegistry):
3888 * platform/network/BlobRegistryImpl.cpp:
3889 * platform/network/NetworkStateNotifier.cpp:
3890 * platform/network/NetworkStateNotifier.h:
3891 (NetworkStateNotifier):
3892 * platform/network/NetworkingContext.h:
3893 (NetworkingContext):
3894 * platform/network/ResourceHandleClient.h:
3895 * platform/network/ResourceRequestBase.cpp:
3897 * platform/text/cf/HyphenationCF.cpp:
3898 * plugins/PluginViewNone.cpp:
3900 * testing/Internals.cpp:
3901 * xml/XMLHttpRequest.cpp:
3902 (WebCore::XMLHttpRequest::createRequest):
3904 2013-04-07 Ed Bartosh <bartosh@gmail.com>
3906 [EFL] --minimal build fails because of incorrect usage of GENERATE_THEME in CMakeLists.txt
3907 https://bugs.webkit.org/show_bug.cgi?id=113902
3911 * platform/efl/DefaultTheme/CMakeLists.txt:
3912 Put possibly empty variable after non-empty to avoid space
3913 at the beginning of string parameter
3915 2013-04-07 Patrick Gansterer <paroga@webkit.org>
3917 Add default implementation for KURL::fileSystemPath()
3918 https://bugs.webkit.org/show_bug.cgi?id=108326
3920 Reviewed by Benjamin Poulain.
3922 The code for KURL::fileSystemPath() has been duplicated in different ports.
3923 Add an implementation of this function to KURL.cpp for this ports and
3924 get rid of the very similar port specific implementation files.
3926 * PlatformBlackBerry.cmake:
3927 * PlatformEfl.cmake:
3928 * PlatformWinCE.cmake:
3929 * platform/KURL.cpp:
3931 (WebCore::KURL::fileSystemPath):
3932 * platform/blackberry/KURLBlackBerry.cpp: Removed.
3933 * platform/efl/KURLEfl.cpp: Removed.
3934 * platform/wince/KURLWinCE.cpp: Removed.
3935 * platform/wx/KURLWx.cpp: Removed.
3937 2013-04-07 Patrick Gansterer <paroga@webkit.org>
3939 Remove references to Skia and V8 from CMake files
3940 https://bugs.webkit.org/show_bug.cgi?id=114130
3942 Reviewed by Geoffrey Garen.
3944 * PlatformBlackBerry.cmake:
3946 2013-04-07 David Kilzer <ddkilzer@apple.com>
3948 Remove the rest of SVG_DOM_OBJC_BINDINGS
3949 <http://webkit.org/b/114112>
3951 Reviewed by Geoffrey Garen.
3953 * Configurations/WebCore.xcconfig:
3954 - Remove EXCLUDED_SOURCE_FILE_NAMES_SVG_DOM_OBJC_BINDINGS. Note
3955 that DOMHTMLIFrameElementPrivate.h should not have been in
3956 this list because the class contained methods other than just
3959 * WebCore.xcodeproj/project.pbxproj:
3960 - Remove DOMHTMLFrameElementPrivate.h since the only method it
3961 contained was -[DOMHTMLFrameElement getSVGDocument], which was
3962 part of the SVG DOM Objective-C bindings.
3964 * bindings/objc/DOM.mm:
3966 * bindings/objc/DOMEvents.mm:
3968 * bindings/objc/ExceptionHandlers.mm:
3969 (WebCore::raiseDOMException):
3970 - Remove code in ENABLE(SVG_DOM_OBJC_BINDINGS).
3972 2013-04-07 Oliver Hunt <oliver@apple.com>
3974 Inspector should display information about non-object exceptions
3975 https://bugs.webkit.org/show_bug.cgi?id=114123
3977 Reviewed by Adele Peterson.
3979 Make use of the stack trace for line information when we're reporting
3982 * bindings/js/JSDOMBinding.cpp:
3983 (WebCore::reportException):
3985 2013-04-07 Robert Hogan <robert@webkit.org>
3987 table element may get larger when its contents are recreated
3988 https://bugs.webkit.org/show_bug.cgi?id=111342
3990 Reviewed by Darin Adler.
3992 Remove anonymous table section wrappers when destroying their children.
3994 Test: fast/table/anonymous-table-section-removed.html
3996 * rendering/RenderObject.cpp:
3997 (WebCore::RenderObject::destroyAndCleanupAnonymousWrappers):
3999 2013-04-07 Patrick Gansterer <paroga@webkit.org>
4001 [WIN] Fix build without precompiled header after r145827.
4003 * platform/ContextMenuItem.h:
4004 * platform/PlatformMenuDescription.h:
4006 2013-04-07 Patrick Gansterer <paroga@webkit.org>
4008 Fix compilation of LocaleWin with !ENABLE(CALENDAR_PICKER) && !ENABLE(DATE_AND_TIME_INPUT_TYPES)
4010 * platform/text/win/LocaleWin.cpp:
4011 (WebCore::LocaleWin::ensureShortMonthLabels):
4013 (WebCore::LocaleWin::ensureMonthLabels):
4015 2013-04-07 Patrick Gansterer <paroga@webkit.org>
4017 [WIN] Fix build without precompiled header after r144216.
4019 * platform/network/cf/FormDataStreamCFNet.h:
4020 * platform/network/mac/FormDataStreamMac.h:
4022 2013-04-07 Ed Bartosh <bartosh@gmail.com>
4024 [EFL] --minimal build fails with error: WebCore::FrameSelection::notifyAccessibilityForSelectionChange()
4025 https://bugs.webkit.org/show_bug.cgi?id=114089
4027 Reviewed by Chris Fleizach.
4029 Wrapped accessibility related code in #if HAVE(ACCESSIBILITY)
4030 * editing/FrameSelection.cpp:
4031 (WebCore::FrameSelection::setSelection):
4032 * editing/FrameSelection.h:
4035 2013-04-06 Benjamin Poulain <benjamin@webkit.org>
4038 https://bugs.webkit.org/show_bug.cgi?id=114108
4040 Reviewed by Anders Carlsson.
4042 * platform/graphics/filters/skia/*: Removed.
4043 * platform/graphics/skia/*: Removed.
4044 * platform/image-decoders/skia/*: Removed.
4045 * platform/image-encoders/skia/*: Removed.
4047 2013-04-06 Benjamin Poulain <benjamin@webkit.org>
4049 Remove the chromium code from platform/graphics/mac
4050 https://bugs.webkit.org/show_bug.cgi?id=114107
4052 Reviewed by Anders Carlsson.
4054 * platform/graphics/mac/FontCacheMac.mm:
4055 (WebCore::FontCache::getFontDataForCharacters):
4056 (WebCore::FontCache::createFontPlatformData):
4057 * platform/graphics/mac/FontComplexTextMac.cpp:
4058 (WebCore::Font::selectionRectForComplexText):
4059 (WebCore::Font::drawComplexText):
4060 (WebCore::Font::floatWidthForComplexText):
4061 (WebCore::Font::offsetForPositionForComplexText):
4062 * platform/graphics/mac/FontMac.mm:
4063 (WebCore::hasBrokenCTFontGetVerticalTranslationsForGlyphs):
4065 2013-04-06 Benjamin Poulain <benjamin@webkit.org>
4067 Clean platform/graphics/cg of the chromium bits
4068 https://bugs.webkit.org/show_bug.cgi?id=114106
4070 Reviewed by Anders Carlsson.
4072 * platform/graphics/cg/BitmapImageCG.cpp:
4073 * platform/graphics/cg/GraphicsContextCG.cpp:
4074 (WebCore::GraphicsContext::roundToDevicePixels):
4075 * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
4076 (GraphicsContextPlatformPrivate):
4077 * platform/graphics/cg/ImageBufferCG.cpp: