1 2011-06-13 Keishi Hattori <keishi@webkit.org>
5 Accomplished using sort-Xcode-project-file.
7 * WebCore.xcodeproj/project.pbxproj:
9 2011-06-12 Jer Noble <jer.noble@apple.com>
11 Reviewed by Darin Adler.
13 REGRESSION (full screen video): Watch Again button is obscured after full screen playback ends at Apple trailers page
14 https://bugs.webkit.org/show_bug.cgi?id=62507
16 No new tests; DRT would have to be modified to delay between receiving exitFullScreenForElement() and calling
17 webkitWillExitFullScreenForElement() to be able to test this.
19 If the full-screen element is removed, and webkitWillExitFullScreenForElement() is not called before
20 fullScreenElementRemoved() returns, then ancestors of the full-screen element will not have their
21 containsFullScreenElement property removed. To protect against this, reset the property by calling
22 setContainsFullScreenElementRecursively() from within fullScreenElementRemoved().
25 (WebCore::Document::fullScreenElementRemoved): Added call to setContainsFullScreenElementRecursively.
27 2011-06-12 Adam Barth <abarth@webkit.org>
29 Reviewed by Alexey Proskuryakov.
31 Rename FrameLoaderClient::interruptForPolicyChangeError to use the past tense
32 https://bugs.webkit.org/show_bug.cgi?id=62516
34 As requested by Alexey in https://bugs.webkit.org/show_bug.cgi?id=62510.
36 * loader/EmptyClients.h:
37 (WebCore::EmptyFrameLoaderClient::interruptedForPolicyChangeError):
38 * loader/FrameLoaderClient.h:
39 * loader/MainResourceLoader.cpp:
40 (WebCore::MainResourceLoader::interruptedForPolicyChangeError):
41 (WebCore::MainResourceLoader::stopLoadingForPolicyChange):
42 (WebCore::MainResourceLoader::continueAfterContentPolicy):
43 * loader/MainResourceLoader.h:
45 2011-06-12 Hironori Bono <hbono@chromium.org>
47 Reviewed by Hajime Morita.
49 Add null checks to HTMLTextAreaElement::removeSpellcheckRange().
50 https://bugs.webkit.org/show_bug.cgi?id=62526
52 This change adds null checks to the following function to prevent crashes
53 when calling removeSpellcheckRange() with null:
54 HTMLTextAreaElement::removeSpellcheckRange(),
55 HTMLInputElement::removeSpellcheckRange(), and
56 HTMLDivElement::removeSpellcheckRange().
58 Test: editing/spelling/spellcheck-api-crash.html
60 * html/HTMLDivElement.cpp:
61 (WebCore::HTMLDivElement::removeSpellcheckRange):
62 * html/HTMLInputElement.cpp:
63 (WebCore::HTMLInputElement::removeSpellcheckRange):
64 * html/HTMLTextAreaElement.cpp:
65 (WebCore::HTMLTextAreaElement::removeSpellcheckRange):
67 2011-06-12 Adam Barth <abarth@webkit.org>
69 Reviewed by Darin Adler.
71 DocumentParser::appendBytes should use size_t for length instead of int
72 https://bugs.webkit.org/show_bug.cgi?id=62508
74 size_t is the proper type for distances in memory, especially on 64 bit
77 * dom/DecodedDataDocumentParser.cpp:
78 (WebCore::DecodedDataDocumentParser::appendBytes):
79 * dom/DecodedDataDocumentParser.h:
80 * dom/DocumentParser.h:
81 * html/ImageDocument.cpp:
82 (WebCore::ImageDocumentParser::appendBytes):
83 * html/MediaDocument.cpp:
84 (WebCore::MediaDocumentParser::appendBytes):
85 * html/PluginDocument.cpp:
86 (WebCore::PluginDocumentParser::appendBytes):
87 * loader/SinkDocument.cpp:
88 (WebCore::SinkDocumentParser::appendBytes):
90 2011-06-12 Adam Barth <abarth@webkit.org>
92 Reviewed by Eric Seidel.
94 Remove FrameLoader::isProcessingUserGesture
95 https://bugs.webkit.org/show_bug.cgi?id=62519
97 This function is a remnant of the old user gesture design, which
98 involved per-frame state stored on FrameLoader. Now that we're using
99 static state, we don't need this function anymore.
101 This function used to check whether JavaScript was enabled for the
102 top-level frame, but that check doesn't make any sense (like much of
103 the old user gesture code).
106 * html/HTMLMediaElement.cpp:
107 (WebCore::HTMLMediaElement::processingUserGesture):
108 * loader/FrameLoader.cpp:
109 (WebCore::FrameLoader::submitForm):
110 * loader/FrameLoader.h:
111 * rendering/RenderFileUploadControl.cpp:
112 (WebCore::RenderFileUploadControl::click):
114 2011-06-12 Adam Barth <abarth@webkit.org>
116 Fix fullscreen/full-screen-iframe-legacy.html.
118 * html/HTMLVideoElement.idl:
120 2011-06-12 Adam Barth <abarth@webkit.org>
122 Reviewed by Alexey Proskuryakov.
124 Remove trival "forward-to-client" member functions from FrameLoader
125 https://bugs.webkit.org/show_bug.cgi?id=62510
127 Originally, FrameLoader was supposed to abstract FrameLoaderClient, but
128 we lost that battle log ago. Nowadays, it's easier if folks just call
129 into FrameLoaderClient directly. Many of these functions have direct
130 callers already anyway.
133 * html/HTMLMediaElement.cpp:
134 (WebCore::HTMLMediaElement::createRenderer):
135 (WebCore::HTMLMediaElement::attach):
136 * loader/DocumentLoader.cpp:
137 (WebCore::DocumentLoader::setRequest):
138 (WebCore::DocumentLoader::setMainDocumentError):
139 (WebCore::DocumentLoader::setupForReplaceByMIMEType):
140 * loader/FrameLoader.cpp:
141 (WebCore::FrameLoader::didFirstLayout):
142 * loader/FrameLoader.h:
143 - cancelledError is slightly more delicate, so I'm going to move it in
145 * loader/MainResourceLoader.cpp:
146 (WebCore::MainResourceLoader::interruptForPolicyChangeError):
147 (WebCore::MainResourceLoader::stopLoadingForPolicyChange):
148 (WebCore::MainResourceLoader::continueAfterContentPolicy):
149 (WebCore::MainResourceLoader::handleEmptyLoad):
150 (WebCore::MainResourceLoader::loadNow):
151 * loader/MainResourceLoader.h:
152 * loader/NetscapePlugInStreamLoader.cpp:
153 (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
154 * loader/PingLoader.cpp:
155 (WebCore::PingLoader::PingLoader):
156 * loader/PolicyChecker.cpp:
157 (WebCore::PolicyChecker::continueAfterNavigationPolicy):
158 * loader/ResourceLoader.cpp:
159 (WebCore::ResourceLoader::blockedError):
160 (WebCore::ResourceLoader::cannotShowURLError):
161 (WebCore::ResourceLoader::shouldUseCredentialStorage):
162 (WebCore::ResourceLoader::canAuthenticateAgainstProtectionSpace):
163 * page/ContextMenuController.cpp:
164 (WebCore::ContextMenuController::populate):
166 2011-06-12 Dan Bernstein <mitz@apple.com>
168 Reviewed by Darin Adler.
170 <rdar://problem/9513180> REGRESSION (r84166): recalcStyle for display:inline to display:none transition has complexity N^2 where N is the number of child Text nodes
171 https://bugs.webkit.org/show_bug.cgi?id=61557
173 Replaced the fix for bug 58500 with a refined version.
175 * rendering/RenderText.cpp:
176 (WebCore::RenderText::clippedOverflowRectForRepaint): Use the containing block unless it is
177 across a layer boundary.
179 2011-06-12 Adam Barth <abarth@webkit.org>
181 Reviewed by Andreas Kling.
183 Minor user-gesture related cleanup
184 https://bugs.webkit.org/show_bug.cgi?id=62511
186 In reading the user gesture code, I noticed that these lines of code
187 should be deleted because they don't do anything.
189 * bindings/v8/NPV8Object.cpp:
190 * html/HTMLAnchorElement.cpp:
191 * html/HTMLVideoElement.idl:
193 2011-06-11 Nikolas Zimmermann <nzimmermann@rim.com>
195 Reviewed by Dirk Schulze.
197 Add TextRun charactersLength member
198 https://bugs.webkit.org/show_bug.cgi?id=62501
200 Preparation patch 2: Propagate the maximum length of the characters buffer the TextRun operates on, even when we're only measuring a substring.
201 For example: In RenderText when we're measuring 'len' characters starting from "text()->characters() + start", there's a portion
202 of "textLength() - start" characters that we're not processing. In order to support ligatures when integrating SVG Fonts
203 within the GlyphPage concept, we need this extra information, to lookup ligatures even when single chars are measured.
204 If a font defines an eg "ffl" ligature, and we're measuring the "f" of "ffl", it shall looukp the "ffl" glyph from the font,
205 and skip the next two characters (this will be done in WidthIterator).
207 This doesn't yet affect any test, the new SVG Fonts code is not merged yet, this is the preparaion patch 2.
209 * platform/graphics/Font.h: Add yet-unused "const TextRun&" parameter to drawGlyphBuffer/drawEmphasisMarks.
210 * platform/graphics/FontFastPath.cpp: Ditto. This parameter will be used to looukp the TextRunRenderingContext in a follow-up patch.
211 (WebCore::Font::drawSimpleText):
212 (WebCore::Font::drawEmphasisMarksForSimpleText):
213 (WebCore::Font::drawGlyphBuffer):
214 (WebCore::Font::drawEmphasisMarks):
215 * platform/graphics/TextRun.h: Add "int m_charactersLength", similar to "int m_len". It denotes the maximum length of the characters buffer
216 that we're holding. It defaults to the passed "len" value, but is overriden by explicit setCharactersLength calls.
217 (WebCore::TextRun::TextRun):
218 (WebCore::TextRun::charactersLength):
219 (WebCore::TextRun::setCharactersLength):
220 * platform/graphics/mac/FontComplexTextMac.cpp: Pass TextRun do drawGlyphBuffer/drawEmphasisMarks.
221 (WebCore::Font::drawComplexText):
222 (WebCore::Font::drawEmphasisMarksForComplexText):
223 * platform/graphics/win/FontWin.cpp: Ditto.
224 (WebCore::Font::drawComplexText):
225 (WebCore::Font::drawEmphasisMarksForComplexText):
226 * platform/graphics/wx/FontWx.cpp: Ditto.
227 (WebCore::Font::drawComplexText):
228 (WebCore::Font::drawEmphasisMarksForComplexText):
229 * rendering/InlineTextBox.cpp: Call setCharactersLength on the processed TextRun.
230 (WebCore::InlineTextBox::constructTextRun):
231 * rendering/RenderBlockLineLayout.cpp: Ditto.
232 (WebCore::textWidth):
233 (WebCore::tryHyphenating):
234 * rendering/RenderText.cpp: Ditto.
235 (WebCore::RenderText::widthFromCache):
236 (WebCore::RenderText::computePreferredLogicalWidths):
237 (WebCore::RenderText::width):
238 * rendering/svg/SVGInlineTextBox.cpp: Ditto.
239 (WebCore::SVGInlineTextBox::constructTextRun):
241 2011-06-12 Robert Hogan <robert@webkit.org>
243 Reviewed by Andreas Kling.
245 [Qt] Fix methods.html and methods-lower-case.html
246 https://bugs.webkit.org/show_bug.cgi?id=62221
248 * platform/network/qt/QNetworkReplyHandler.cpp:
249 (WebCore::QNetworkReplyHandler::clearContentsHeaders): Refactor code from sendNetworkRequest
250 (WebCore::QNetworkReplyHandler::getIODevice): ditto
251 (WebCore::QNetworkReplyHandler::sendNetworkRequest):
252 - Remove ContentType and ContentLength headers from GET, DELETE and HEAD requests since
253 we do not send data with any of these requests.
254 - If a custom HTTP operation contains data, send it.
255 * platform/network/qt/QNetworkReplyHandler.h:
257 2011-06-11 Michael Saboff <msaboff@apple.com>
259 Reviewed by James Robinson.
261 REGRESSION(88260): 10-50% performance regression across many page cyclers
262 https://bugs.webkit.org/show_bug.cgi?id=62349
264 Made CHROMIUM platform specific values for cMaxInactiveFontData and
265 cTargetInactiveFontData to mitigate the current performance issue on Chromium
266 page cycler tests. Made the chromium value for cMaxInactiveFontData 250 based
267 on recommendation from James Robinson. Changed cTargetInactiveFontData to 200
268 so that 50 inactive fonts will be cleaned up at a time.
270 Change made to address existing Chromium performance test regression.
272 * platform/graphics/FontCache.cpp:
274 2011-06-11 Adam Barth <abarth@webkit.org>
276 Reviewed by Darin Adler.
278 Remove unnecessary strlen from DocumentWriter
279 https://bugs.webkit.org/show_bug.cgi?id=62505
281 This ugly piece of code appears not to be needed. Rejoice.
284 * loader/DocumentLoader.cpp:
285 (WebCore::DocumentLoader::commitData):
286 * loader/DocumentLoader.h:
287 * loader/DocumentWriter.cpp:
288 (WebCore::DocumentWriter::addData):
289 * loader/DocumentWriter.h:
291 2011-06-11 Adam Barth <abarth@webkit.org>
293 Reviewed by Darin Adler.
295 DocumentParser::appendBytes shouldn't have a "flush" boolean parameter
296 https://bugs.webkit.org/show_bug.cgi?id=62499
298 This patch removes the "flush" Boolean parameter from
299 DocumentParser::appendBytes in favor of a new flush method. This makes
300 some code in DocumentWriter look less ridiculous.
302 There's still lots of on contorting to do here, but it's a start.
304 * dom/DecodedDataDocumentParser.cpp:
305 (WebCore::DecodedDataDocumentParser::appendBytes):
306 (WebCore::DecodedDataDocumentParser::flush):
307 * dom/DecodedDataDocumentParser.h:
308 * dom/DocumentParser.h:
309 * dom/RawDataDocumentParser.h:
310 (WebCore::RawDataDocumentParser::flush):
311 * html/ImageDocument.cpp:
312 (WebCore::ImageDocumentParser::appendBytes):
313 * html/MediaDocument.cpp:
314 (WebCore::MediaDocumentParser::appendBytes):
315 * html/PluginDocument.cpp:
316 (WebCore::PluginDocumentParser::appendBytes):
317 * loader/DocumentWriter.cpp:
318 (WebCore::DocumentWriter::reportDataReceived):
319 (WebCore::DocumentWriter::addData):
320 (WebCore::DocumentWriter::endIfNotLoadingMainResource):
321 * loader/DocumentWriter.h:
322 * loader/SinkDocument.cpp:
323 (WebCore::SinkDocumentParser::appendBytes):
325 2011-06-11 Dimitri Glazkov <dglazkov@chromium.org>
327 Unreviewed, rolling out r88569.
328 http://trac.webkit.org/changeset/88569
329 https://bugs.webkit.org/show_bug.cgi?id=62398
331 Broke Chromium browser test:
332 IndexedDBBrowserTestWithGCExposed.DatabaseCallbacksTest
334 * storage/IDBFactory.idl:
336 2011-06-11 Dimitri Glazkov <dglazkov@chromium.org>
338 Unreviewed, rolling out r88565.
339 http://trac.webkit.org/changeset/88565
340 https://bugs.webkit.org/show_bug.cgi?id=62401
342 Broke Chromium browser test:
343 IndexedDBBrowserTestWithGCExposed.DatabaseCallbacksTest
345 * storage/IDBDatabase.cpp:
346 (WebCore::IDBDatabase::setVersion):
347 * storage/IDBDatabase.idl:
349 2011-06-10 Abhishek Arya <inferno@chromium.org>
351 Reviewed by Simon Fraser.
353 Null parent element sheet pointers in CSSMutableStyleDeclaration consumers
354 when removed from document, set them when reinserted into document.
355 https://bugs.webkit.org/show_bug.cgi?id=62230
357 When a HTMLBodyElement, StyledElement are removed from document,
358 we didn't clear out the parent pointers from their link, style declarations.
359 These parent pointers pointed to the document's element sheet which will
360 get removed when document is getting destroyed. It does make sense to
361 clear out parent pointers when we are getting removed from document and
362 readd them when we get inserted again.
364 Tests: fast/dom/body-link-decl-parent-crash.html
365 fast/dom/styled-inline-style-decl-parent-crash.html
367 * dom/StyledElement.cpp:
368 (WebCore::StyledElement::insertedIntoDocument):
369 (WebCore::StyledElement::removedFromDocument):
370 * dom/StyledElement.h:
371 * html/HTMLBodyElement.cpp:
372 (WebCore::HTMLBodyElement::parseMappedAttribute):
373 (WebCore::HTMLBodyElement::insertedIntoDocument):
374 (WebCore::HTMLBodyElement::removedFromDocument):
375 (WebCore::HTMLBodyElement::didMoveToNewOwnerDocument):
376 * html/HTMLBodyElement.h:
378 2011-06-10 Adam Barth <abarth@webkit.org>
380 Remove bogus ASSERTs. These ASSERTs used to be correct before I
381 changed DocumentWriter to put the onus for ignoring empty writes onto
384 This patch should stop these test from triggering ASSERTs:
386 plugins/plugin-document-back-forward.html
387 plugins/return-error-from-new-stream-callback-in-full-frame-plugin.html
388 userscripts/user-script-plugin-document.html
390 * html/MediaDocument.cpp:
391 (WebCore::MediaDocumentParser::appendBytes):
392 * html/PluginDocument.cpp:
393 (WebCore::PluginDocumentParser::appendBytes):
395 2011-06-09 Jer Noble <jer.noble@apple.com>
397 Reviewed by Darin Adler.
399 REGRESSION: End of apple.com video in full-screen mode leads to unusable page.
400 https://bugs.webkit.org/show_bug.cgi?id=62411
402 Test: fullscreen/full-screen-remove-ancestor-after.html
404 The placeholder for RenderFullScreen was being created as a non-anonymous object, which led
405 to the document's renderer being set to 0 when the placeholder was removed due to its parent
406 being removed. Setting the placeholder to be anonymous, however, means that it will be
407 coalesced with sibling anonymous blocks, so added the RenderFullScreenPlaceholder to the
408 list of anonymous objects that are not considered anonymous blocks, to avoid the placeholder
409 being so coalesced. To do so, made the placeholder object a true subclass, and add and
410 override its destroy() function to notify the RenderFullScreen object that it has been
413 * rendering/RenderFullScreen.cpp:
414 (RenderFullScreenPlaceholder::RenderFullScreenPlaceholder): Added.
415 (RenderFullScreenPlaceholder::~RenderFullScreenPlaceholder): Added.
416 (RenderFullScreenPlaceholder::isRenderFullScreenPlaceholder): Added.
417 (RenderFullScreenPlaceholder::destroy): Notify the owner renderer that its placeholder
419 (RenderFullScreen::destroy): Assert that the m_placeholder ivar is 0 after destroying it.
420 (RenderFullScreen::setPlaceholder): Added.
421 (RenderFullScreen::createPlaceholder): Do not make the placeholder anonymous.
422 * rendering/RenderFullScreen.h:
423 * rendering/RenderObject.h:
424 (WebCore::RenderObject::isRenderFullScreenPlaceholder): Added.
425 (WebCore::RenderObject::isAnonymousBlock): Added the placeholder class to the list of
426 objects which are not anonymous blocks.
428 2011-06-10 Gavin Barraclough <barraclough@apple.com>
430 Reviewed by Sam Weinig.
432 https://bugs.webkit.org/show_bug.cgi?id=16777
433 Eliminate JSC::NaN and JSC::Inf
435 There's no good reason for -K-J-S- JSC to have its own NAN and infinity constants.
436 The ones in std::numeric_limits are perfectly good.
437 Remove JSC::Inf, JSC::NaN, switch some cases of (isnan || isinf) to !isfinite.
439 * bindings/js/JSDataViewCustom.cpp:
440 (WebCore::getDataViewMember):
442 2011-06-10 James Simonsen <simonjam@chromium.org>
444 Reviewed by Eric Seidel.
446 <script> inside <svg> should be executed
447 https://bugs.webkit.org/show_bug.cgi?id=62412
449 Tests: svg/in-html/script-external.html
450 svg/in-html/script-nested.html
451 svg/in-html/script-write.html
452 svg/in-html/script.html
454 * html/parser/HTMLTreeBuilder.cpp:
455 (WebCore::HTMLTreeBuilder::processEndTag):
457 2011-06-10 Adam Barth <abarth@webkit.org>
459 Reviewed by Darin Adler.
461 Script-created parsers should ignore data from the network
462 https://bugs.webkit.org/show_bug.cgi?id=62336
464 If the network packet boundaries line up just right, we can end up
465 feeding network data to a parser created by document.write (or
466 document.open). That's incorrect.
468 This patch causes DocumentWriter to grab hold of the original parser
469 and direct all input to that parser.
471 Test: fast/parser/document-write-ignores-later-network-bytes.html
474 (WebCore::Document::explicitClose):
475 * loader/DocumentWriter.cpp:
476 (WebCore::DocumentWriter::begin):
477 (WebCore::DocumentWriter::addData):
478 (WebCore::DocumentWriter::endIfNotLoadingMainResource):
479 (WebCore::DocumentWriter::setDocumentWasLoadedAsPartOfNavigation):
480 * loader/DocumentWriter.h:
482 2011-06-10 Simon Fraser <simon.fraser@apple.com>
484 Reviewed by Dan Bernstein.
486 Keep overlap testing logic until real 3d transforms are being used
487 https://bugs.webkit.org/show_bug.cgi?id=49857
489 For pages that use the translateZ(0) hack to force compositing layers, it's
490 advantageous to keep overlap testing, to avoid putting too many other
491 elements into layers.
493 Only turn off overlap testing if non-identity 3D transforms are used.
495 Tests: compositing/layer-creation/rotate3d-overlap.html
496 compositing/layer-creation/translatez-overlap.html
498 * rendering/RenderLayerCompositor.cpp:
499 (WebCore::RenderLayerCompositor::updateBacking):
500 (WebCore::RenderLayerCompositor::hasNonIdentity3DTransform):
501 * rendering/RenderLayerCompositor.h:
503 2011-06-10 David Levin <levin@chromium.org>
505 Reviewed by Dmitry Titov.
507 Web Worker fails to fire error event when a resource fetch fails.
508 https://bugs.webkit.org/show_bug.cgi?id=62475
510 Test: http/tests/workers/worker-workerScriptNotThere.html
512 * workers/WorkerScriptLoader.cpp:
513 (WebCore::WorkerScriptLoader::didFinishLoading): Ensure that
514 the client is notified of the error when it happens during loading.
516 2011-06-10 David Levin <levin@chromium.org>
518 Reviewed by Dmitry Titov.
520 Fetching a Worker with url that isn't allowed from a file based test causes DRT to crash.
521 https://bugs.webkit.org/show_bug.cgi?id=62469
523 Test: fast/workers/worker-crash-with-invalid-location.html
525 * workers/DefaultSharedWorkerRepository.cpp:
526 (WebCore::SharedWorkerScriptLoader::load): Changed to using the RefCounted version of WorkerScriptLoader.
527 * workers/Worker.cpp:
528 (WebCore::Worker::create): Ditto.
529 * workers/Worker.h: Ditto.
530 * workers/WorkerContext.cpp:
531 (WebCore::WorkerContext::importScripts): Ditto.
532 * workers/WorkerScriptLoader.cpp:
533 (WebCore::WorkerScriptLoader::~WorkerScriptLoader): Created to
534 allow removing some header includes in WorkerScriptLoader.h.
535 (WebCore::WorkerScriptLoader::loadAsynchronously): Fix the ordering
536 of setPendingActivity and keep WorkerScriptLoader alive during a
538 * workers/WorkerScriptLoader.h: Made this RefCounted to allow for
539 keeping it alive during callbacks. Also, removed unnecessary header
540 inclusions (and added a destructor to facilitate that).
541 (WebCore::WorkerScriptLoader::create):
543 2011-06-10 Alok Priyadarshi <alokp@chromium.org>
545 Reviewed by James Robinson.
547 [chromium] Top portion of page is rendered messed up with accelerated drawing
548 https://bugs.webkit.org/show_bug.cgi?id=62484
550 Fixed the math in flipping the texture from bottom-up to top-down.
551 Test: compositing/repaint/shrink-layer.html (existing)
553 * platform/graphics/chromium/LayerTilerChromium.cpp:
554 (WebCore::LayerTilerChromium::draw):
556 2011-06-10 Tony Chang <tony@chromium.org>
558 Reviewed by Ojan Vafai.
560 add a compile guard ENABLE(FLEXBOX)
561 https://bugs.webkit.org/show_bug.cgi?id=62049
563 * Configurations/FeatureDefines.xcconfig:
565 2011-06-10 Sam Weinig <sam@webkit.org>
567 Roll out r88568. It is not the right fix for the problem.
569 * loader/appcache/ApplicationCacheHost.cpp:
570 (WebCore::ApplicationCacheHost::isApplicationCacheEnabled):
572 2011-06-10 Mark Rowe <mrowe@apple.com>
574 Reviewed by Dimitri Glazkov.
576 <rdar://problem/9562114> Fix DumpRenderTree build for production configuration.
578 Rename the built WebCoreTestSupport dylib to libWebCoreTestSupport.dylib so
579 that it can be found via the library search path rather than requiring an
580 absolute path be passed to the linker.
582 Install the library and its associated header file in a more appropriate location
583 for the production configuration.
585 * Configurations/WebCoreTestSupport.xcconfig:
587 2011-06-10 Simon Fraser <simon.fraser@apple.com>
589 Reviewed by Dave Hyatt.
591 Add a scheduleSetNeedsStyleRecalc() method to ContainerNode for use by RenderLayerCompositor
592 https://bugs.webkit.org/show_bug.cgi?id=62471
594 RenderLayerCompositor had some code that did a setNeedsStyleRecalc(), but
595 in a way that was safe to call during existing style recalc or layout.
597 Move this code to ContainerElement so it can be called elsewhere.
598 Also add a param to the node callback so we can pass the style change type.
600 * dom/ContainerNode.cpp:
601 (WebCore::ContainerNode::queuePostAttachCallback):
602 (WebCore::ContainerNode::dispatchPostAttachCallbacks):
603 (WebCore::needsStyleRecalcCallback):
604 (WebCore::ContainerNode::scheduleSetNeedsStyleRecalc):
605 * dom/ContainerNode.h:
607 (WebCore::Node::scheduleSetNeedsStyleRecalc):
608 * html/HTMLFormControlElement.cpp:
609 (WebCore::focusPostAttach):
610 (WebCore::updateFromElementCallback):
611 * html/HTMLPlugInImageElement.cpp:
612 (WebCore::HTMLPlugInImageElement::updateWidgetCallback):
613 * html/HTMLPlugInImageElement.h:
614 * rendering/RenderLayerCompositor.cpp:
615 (WebCore::RenderLayerCompositor::attachRootPlatformLayer):
616 (WebCore::RenderLayerCompositor::detachRootPlatformLayer):
617 (WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange):
618 * rendering/RenderLayerCompositor.h:
619 * svg/SVGUseElement.cpp:
620 (WebCore::updateFromElementCallback):
622 2011-06-10 Mark Pilgrim <pilgrim@chromium.org>
624 Reviewed by Tony Chang.
626 IndexedDB: indexedDB.open() name argument is required
627 https://bugs.webkit.org/show_bug.cgi?id=62398
629 Test: storage/indexeddb/database-name-undefined.html
631 * storage/IDBFactory.idl: use appropriate IDL magic to force undefined values to null, so we handle missing arguments as well as null arguments
633 2011-06-10 Sam Weinig <sam@webkit.org>
635 Reviewed by Beth Dakin.
637 Common crash in ApplicationCacheHost::isApplicationCacheEnabled
638 <rdar://problem/9328684>
640 * loader/appcache/ApplicationCacheHost.cpp:
641 (WebCore::ApplicationCacheHost::isApplicationCacheEnabled):
642 Speculative fix for a null frame on ApplicationCacheHost's DocumentLoader.
644 2011-06-10 Adam Barth <abarth@webkit.org>
646 Reviewed by Eric Seidel.
648 Remove Document::finishParsing
649 https://bugs.webkit.org/show_bug.cgi?id=62474
651 This function appears to exist only to confuse and befuddle us. This
652 patch prepares for DocumentWriter to grab hold of the parser.
654 This patch removes one of the print statements from
655 INSTRUMENT_LAYOUT_SCHEDULING, but I'm not sure
656 INSTRUMENT_LAYOUT_SCHEDULING works anymore anyway.
660 * dom/XMLDocumentParser.cpp:
661 (WebCore::XMLDocumentParser::finish):
662 * html/parser/HTMLDocumentParser.cpp:
663 (WebCore::HTMLDocumentParser::finish):
664 * loader/DocumentWriter.cpp:
665 (WebCore::DocumentWriter::addData):
666 (WebCore::DocumentWriter::endIfNotLoadingMainResource):
667 * loader/FrameLoader.cpp:
668 (WebCore::FrameLoader::stop):
670 2011-06-10 Mark Pilgrim <pilgrim@chromium.org>
672 Reviewed by Tony Chang.
674 IndexedDB: setVersion() version argument is required
675 https://bugs.webkit.org/show_bug.cgi?id=62401
677 Test: storage/indexeddb/setVersion-undefined.html
679 * storage/IDBDatabase.cpp:
680 (WebCore::IDBDatabase::setVersion): check for null version
681 * storage/IDBDatabase.idl: add IDL magic to force undefined to null so we can handle both missing and null arguments
683 2011-06-10 Simon Fraser <simon.fraser@apple.com>
685 Reviewed by Dan Bernstein.
687 Null-check the layer owner again when painting layers
688 https://bugs.webkit.org/show_bug.cgi?id=62473
690 Speculative fix for a crash that occurs when the layer's owner
691 gets destroyed during painting.
693 * platform/graphics/mac/WebLayer.mm:
696 2011-06-08 Robert Hogan <robert@webkit.org>
698 Reviewed by Andreas Kling.
700 [Qt] Lighten the --no-svg build a little
701 https://bugs.webkit.org/show_bug.cgi?id=62314
703 Only generate source from SVG*.idl if the build is svg-enabled.
705 * CodeGenerators.pri:
707 2011-06-10 Nikolas Zimmermann <nzimmermann@rim.com>
709 Reviewed by Rob Buis.
711 Integrate SVG Fonts within GlyphPage concept, removing the special SVG code paths from Font, making it possible to reuse the simple text code path for SVG Fonts
712 https://bugs.webkit.org/show_bug.cgi?id=59085
714 Add glyph table to SVGFontElement mapping between SVGGlyph <-> Glyph
715 https://bugs.webkit.org/show_bug.cgi?id=62441
717 Preparation patch 1: Introduce the internal glyph table in SVGGlyphMap that will be used to identify each
718 SVGGlyph identifier with a Glyph (which is just an ushort). It will be used by follow-up patches.
720 Doesn't affect any test so far.
722 * platform/graphics/SVGGlyph.h:
723 (WebCore::SVGGlyph::SVGGlyph):
724 (WebCore::SVGGlyph::operator==):
725 * rendering/svg/SVGTextRunRenderingContext.cpp:
726 (WebCore::SVGTextRunWalker::walk):
727 * svg/SVGFontData.cpp:
728 (WebCore::SVGFontData::initializeFontData):
729 * svg/SVGFontElement.cpp:
730 (WebCore::SVGFontElement::SVGFontElement):
731 (WebCore::SVGFontElement::registerLigaturesInGlyphCache):
732 (WebCore::SVGFontElement::ensureGlyphCache):
733 (WebCore::kerningForPairOfStringsAndGlyphs):
734 (WebCore::SVGFontElement::horizontalKerningForPairOfStringsAndGlyphs):
735 (WebCore::SVGFontElement::verticalKerningForPairOfStringsAndGlyphs):
736 (WebCore::SVGFontElement::collectGlyphsForString):
737 (WebCore::SVGFontElement::collectGlyphsForGlyphName):
738 (WebCore::SVGFontElement::svgGlyphForGlyph):
739 (WebCore::SVGFontElement::missingGlyph):
740 * svg/SVGFontElement.h:
741 (WebCore::SVGKerningPair::SVGKerningPair):
743 (WebCore::SVGGlyphMap::addGlyphByUnicodeString):
744 (WebCore::SVGGlyphMap::addGlyphByName):
745 (WebCore::SVGGlyphMap::appendToGlyphTable):
746 (WebCore::SVGGlyphMap::collectGlyphsForString):
747 (WebCore::SVGGlyphMap::clear):
748 (WebCore::SVGGlyphMap::svgGlyphForGlyph):
749 (WebCore::SVGGlyphMap::glyphIdentifierForGlyphName):
751 2011-06-10 Emil A Eklund <eae@chromium.org>
753 Reviewed by Eric Seidel.
755 Regression r85573: Blank pages appear at the end of some wikipedia documents.
756 https://bugs.webkit.org/show_bug.cgi?id=62343
758 Fix regression caused by r85573. Cached document size not updated after layout.
760 Test: printing/page-count-relayout-shrink.html
762 * page/FrameView.cpp:
763 (WebCore::FrameView::forceLayoutForPagination):
765 2011-06-10 Rob Buis <rbuis@rim.com>
767 Reviewed by Nikolas Zimmermann.
769 amation event handling broken: focusin
770 https://bugs.webkit.org/show_bug.cgi?id=12894
772 focusin, focusout, activate not implemented in SVG
773 https://bugs.webkit.org/show_bug.cgi?id=40545
775 Make elements that should support GraphicalEventAttribute handle focussing, since focusin, focusout is part of that:
777 http://www.w3.org/TR/SVG11/intro.html#TermGraphicalEventAttribute
779 Match Opera behaviour ; elements that support GraphicalEventAttribute can receive visual mouse focus when having either a focusin or focusout event handler. Elements that support GraphicalEventAttribute can receive visual keyboard focus when having either a focusin or focusout event handler. Keyboard focus does not advance to SVG elements that are not focusable at the time.
781 Tests: svg/custom/focus-event-handling-keyboard.xhtml
782 svg/custom/focus-event-handling.xhtml
784 * rendering/svg/SVGRenderSupport.cpp:
785 (WebCore::SVGRenderSupport::computeRectForRepaint):
786 * svg/SVGCircleElement.h:
787 (WebCore::SVGCircleElement::supportsFocus):
788 * svg/SVGEllipseElement.h:
789 (WebCore::SVGEllipseElement::supportsFocus):
791 (WebCore::SVGGElement::supportsFocus):
792 * svg/SVGImageElement.h:
793 (WebCore::SVGImageElement::supportsFocus):
794 * svg/SVGLineElement.h:
795 (WebCore::SVGLineElement::supportsFocus):
796 * svg/SVGPathElement.h:
797 (WebCore::SVGPathElement::supportsFocus):
798 * svg/SVGPolyElement.h:
799 (WebCore::SVGPolyElement::supportsFocus):
800 * svg/SVGRectElement.h:
801 (WebCore::SVGRectElement::supportsFocus):
802 * svg/SVGSVGElement.h:
803 (WebCore::SVGSVGElement::supportsFocus):
804 * svg/SVGStyledElement.cpp:
805 (WebCore::SVGStyledElement::isMouseFocusable):
806 (WebCore::SVGStyledElement::isKeyboardFocusable):
807 * svg/SVGStyledElement.h:
808 * svg/SVGSwitchElement.h:
809 (WebCore::SVGSwitchElement::supportsFocus):
810 * svg/SVGSymbolElement.h:
811 (WebCore::SVGSymbolElement::supportsFocus):
812 * svg/SVGTextElement.h:
813 (WebCore::SVGTextElement::supportsFocus):
814 * svg/SVGUseElement.h:
815 (WebCore::SVGUseElement::supportsFocus):
817 2011-06-10 Luke Macpherson <macpherson@chromium.org>
819 Reviewed by Eric Seidel.
821 Clean up CSSPrimitiveValue::computeLength*
822 https://bugs.webkit.org/show_bug.cgi?id=61612
824 No new tests as no functionality changed.
826 * css/CSSGradientValue.cpp:
827 Use new computeLength functions.
828 * css/CSSPrimitiveValue.cpp:
829 (WebCore::CSSPrimitiveValue::computeLengthIntForLength):
830 Reduce to a single function using default parameter values.
831 (WebCore::CSSPrimitiveValue::computeLength):
832 Redefine existing functions with separate names as a single function using templated function specialization.
833 * css/CSSPrimitiveValue.h:
834 Prototypes for computeLengthIntForLength and computeLength.
835 * css/CSSStyleApplyProperty.cpp:
836 Use new computeLength functions.
837 * css/CSSStyleSelector.cpp:
838 Use new computeLength functions.
839 * css/MediaQueryEvaluator.cpp:
840 Use new computeLength functions.
841 * css/SVGCSSStyleSelector.cpp:
842 Use new computeLength functions.
844 2011-06-10 Simon Fraser <simon.fraser@apple.com>
846 Reviewed by Beth Dakin.
848 Add utility to RenderLayer to determine if the layer is scrollable
849 https://bugs.webkit.org/show_bug.cgi?id=62467
851 New method that returns true if either scrollbar is present and enabled.
852 Not called anywhere yet.
854 * rendering/RenderLayer.cpp:
855 (WebCore::RenderLayer::allowsScrolling):
856 * rendering/RenderLayer.h:
858 2011-06-10 Dimitri Glazkov <dglazkov@chromium.org>
860 Reviewed by Tony Chang.
862 REGRESSION (r88332): prototype-inheritance-2 ASSERTS attempting to enumerate spellCheckRanges
863 https://bugs.webkit.org/show_bug.cgi?id=62460
865 Test: fast/dom/prototype-inheritance-2.html
867 * dom/DocumentMarkerController.cpp:
868 (WebCore::DocumentMarkerController::userSpellingMarkersForNode): Added an extra 0-check.
870 2011-06-10 James Simonsen <simonjam@chromium.org>
872 Reviewed by Tony Gentilcore.
874 Don't execute scripts in shadow SVG.
875 https://bugs.webkit.org/show_bug.cgi?id=62225
877 Test: svg/dom/use-style-recalc-script-execute-crash.html
879 * dom/ScriptElement.cpp:
880 (WebCore::ScriptElement::prepareScript):
882 2011-06-10 Konstantin Tokarev <ktokarev@smartlabs.tv>
884 Reviewed by Joseph Pecoraro.
886 Fixed build with enabled workers and disabled inspector
887 https://bugs.webkit.org/show_bug.cgi?id=62461
889 * inspector/InspectorWorkerAgent.cpp: Added inspector guard
891 2011-06-10 Darin Adler <darin@apple.com>
893 Reviewed by Eric Carlson.
895 REGRESSION: Fullscreen video controller can't be dragged
896 https://bugs.webkit.org/show_bug.cgi?id=62462
898 No regression test because we don't have machinery for testing the fullscreen
899 mode. We may find a way to add this in the future.
901 * html/shadow/MediaControlElements.cpp:
902 (WebCore::MediaControlPanelElement::MediaControlPanelElement): Initialize new
903 booleans related to dragging.
904 (WebCore::MediaControlPanelElement::startDrag): Added. Starts drag if dragging
905 is allowed and a drag isn't already in progress.
906 (WebCore::MediaControlPanelElement::continueDrag): Added. Moves the window if
907 dragging is already in progress.
908 (WebCore::MediaControlPanelElement::endDrag): Added. Ends the capture that is
909 done during the dragging process.
910 (WebCore::MediaControlPanelElement::setPosition): Added. Positions the panel
911 using explicit top/left.
912 (WebCore::MediaControlPanelElement::resetPosition): Added. Removes the positioning
914 (WebCore::MediaControlPanelElement::defaultEventHandler): Added. Calls startDrag,
915 continueDrag, and endDrag in response to mouse events.
916 (WebCore::MediaControlPanelElement::setCanBeDragged): Added.
917 * html/shadow/MediaControlElements.h: Added new function and data members
920 * html/shadow/MediaControlRootElement.cpp:
921 (WebCore::MediaControlRootElement::enteredFullscreen): Call setCanBeDragged(true)
922 so you can drag the panel while in fullscreen.
923 (WebCore::MediaControlRootElement::exitedFullscreen): Call setCanBeDragged(false)
924 so you can't drag the panel while not in fullscreen. Also call resetPosition so
925 position changes from dragging don't affect the panel in other contexts.
927 2011-06-10 Darin Adler <darin@apple.com>
929 Reviewed by Eric Carlson.
931 REGRESSION: Full screen video HUD is positioned too low for standalone video documents
932 https://bugs.webkit.org/show_bug.cgi?id=62463
934 No test because we don't currently have machinery for testing fullscreen.
936 * css/fullscreen.css: Removed rule that said bottom: 0px for the control panel
937 for full page media in full screen mode. This is not needed because the control
938 panel for full screen mode already has style rules to set its vertical position.
939 (:-webkit-full-screen-ancestor:not(iframe)): Fixed typo where it said
940 -webkit-tranform. This will fix a potential problem where fullscreen would
941 malfunction on a page that had a media element inside a transform.
943 2011-06-10 Sergio Villar Senin <svillar@igalia.com>
945 Reviewed by Gustavo Noronha Silva.
947 [GTK] Add support for non-ASCII filenames in Content-Disposition header
948 https://bugs.webkit.org/show_bug.cgi?id=62454
950 Try latin1 as fallback for header parameter values as some servers
951 do not follow RFC 2045 for example with filename parameter in
954 No new tests required as no functionality changed.
956 * platform/network/soup/ResourceResponseSoup.cpp:
957 (WebCore::ResourceResponse::updateFromSoupMessage):
959 2011-06-10 No'am Rosenthal <noam.rosenthal@nokia.com> and Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
961 Reviewed by Kenneth Rohde Christiansen.
963 Add layer factory to GraphicsLayer for creating non-default layer type.
964 https://bugs.webkit.org/show_bug.cgi?id=61925
966 Added a static factory protected member to GraphicsLayer, which should be accessed from
967 a port-specific implementation of GraphicsLayer::create. For now this is enabled for Qt only.
969 This is needed for accelerated compositing across processes in WebKit2, since WebCore
970 doesn't know in compile time whether it's in WebKit or WebKit2, which makes having two
971 different implementations of GraphicsLayer coexist impossible without some runtime
972 factory that can be overridden by the web process.
974 Note that the use of the factory would be optional, and the port-specific GraphicsLayer::create
975 would have to explicitly call it, in order to be unintrusive with current implementations.
977 No new functionality, so no new tests.
979 * platform/graphics/GraphicsLayer.cpp:
980 (WebCore::GraphicsLayer::setGraphicsLayerFactory):
981 * platform/graphics/GraphicsLayer.h:
983 2011-06-10 Lucas De Marchi <lucas.demarchi@profusion.mobi>
985 Reviewed by Kenneth Rohde Christiansen.
987 [CMAKE] Add generic support for building with WebGL
988 https://bugs.webkit.org/show_bug.cgi?id=62376
990 Set new THIRDPARTY_DIR variable to compile sources under ThirdParty.
992 No change in functionality so no new tests.
996 2011-06-10 Ryuan Choi <ryuan.choi@samsung.com>
998 Reviewed by Andreas Kling.
1000 [GTK][EFL] m_imageInterpolationQuality is not initialized in PlatformContextCairo::PlatformContextCairo.
1001 https://bugs.webkit.org/show_bug.cgi?id=62435
1003 No new tests required as just fixed warning.
1005 * platform/graphics/cairo/PlatformContextCairo.cpp:
1006 (WebCore::PlatformContextCairo::PlatformContextCairo):
1008 2011-06-11-06-09 Ilya Tikhonovsky <loislo@chromium.org>
1010 Reviewed by Yury Semikhatsky.
1012 Web Inspector: protocol: json: Whitespace can be inserted between any pair of tokens.
1013 https://bugs.webkit.org/show_bug.cgi?id=62377
1015 * inspector/InspectorValues.cpp:
1017 2011-06-10 Sheriff Bot <webkit.review.bot@gmail.com>
1019 Unreviewed, rolling out r88530.
1020 http://trac.webkit.org/changeset/88530
1021 https://bugs.webkit.org/show_bug.cgi?id=62440
1023 qt build was broken (Requested by loislo on #webkit).
1025 * inspector/InspectorValues.cpp:
1027 2011-06-09 Ilya Tikhonovsky <loislo@chromium.org>
1029 Reviewed by Yury Semikhatsky.
1031 Web Inspector: protocol: json: Whitespace can be inserted between any pair of tokens.
1032 https://bugs.webkit.org/show_bug.cgi?id=62377
1034 * inspector/InspectorValues.cpp:
1036 2011-06-09 Jer Noble <jer.noble@apple.com>
1038 Reviewed by Darin Adler.
1040 REGRESSION: Vertical scroll bar appears when taking videos into full screen at jerryseinfeld.com
1041 https://bugs.webkit.org/show_bug.cgi?id=62402
1043 Sites are able to override the "overflow:hidden" rule for root full-screen nodes
1044 simply by adding a "html {}" rule. Make this rule !important, and also make it apply
1045 to root nodes who are merely ancestors of full-screen elements, to cover the case of
1046 a root node containing an <iframe> whose contents have gone full-screen.
1048 * css/fullscreen.css:
1049 (:root:-webkit-full-screen-document:not(:-webkit-full-screen),
1050 :root:-webkit-full-screen-ancestor): Apply the overflow rule to root elements
1051 who are full-screen ancestors, and make them !important.
1053 2011-06-09 Luke Macpherson <macpherson@chromium.org>
1055 Reviewed by Eric Seidel.
1057 Rename RenderStyle visuallyOrdered property and use an enum instead of a bool.
1058 https://bugs.webkit.org/show_bug.cgi?id=61495
1060 No new tests required as no functionality changed.
1062 * css/CSSPrimitiveValueMappings.h:
1063 Support cast to/from Order
1064 * css/CSSStyleSelector.cpp:
1065 (WebCore::CSSStyleSelector::styleForDocument):
1066 Convert from bool to enum type.
1067 (WebCore::CSSStyleSelector::applyProperty):
1068 Convert to macro that uses the cast defined in CSSPrimitiveValueMappings.
1070 (WebCore::Document::setVisuallyOrdered):
1071 Change call to RenderStyle::setRTLOrdering using enum parameter.
1072 * rendering/style/RenderStyle.h:
1073 rename visuallyOrdered proerties rtlOrdering and use appropriate enum types.
1074 * rendering/style/RenderStyleConstants.h:
1077 2011-06-09 Luke Macpherson <macpherson@chromium.org>
1079 Reviewed by Eric Seidel.
1081 Implement CSSPropertyOutlineStyle handler in CSSStyleApplyProperty
1082 https://bugs.webkit.org/show_bug.cgi?id=61601
1084 No new tests. No new functionality added / covered by existing tests.
1086 * css/CSSPrimitiveValueMappings.h:
1087 (WebCore::CSSPrimitiveValue::operator EBorderStyle):
1088 Support CSSValueAuto as required by outline-style property.
1089 (WebCore::CSSPrimitiveValue::operator OutlineIsAuto):
1090 Add cast to new OutlineIsAuto enum.
1091 * css/CSSStyleApplyProperty.cpp:
1092 (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1093 Initialize handler for CSSPropertyOutlineStyle.
1094 * css/CSSStyleSelector.cpp:
1095 (WebCore::CSSStyleSelector::applyProperty):
1096 Remove old handler for CSSPropertyOutlineStyle.
1097 * rendering/style/OutlineValue.h:
1098 Use new OutlineIsAuto enum instead of bool.
1099 * rendering/style/RenderStyle.h:
1100 Split existing two-parameter setter setOutlineStyle into separate setters for style and auto properties.
1101 Use new OutlineIsAuto enum type.
1102 * rendering/style/RenderStyleConstants.h:
1103 Define new enum OutlineIsAuto.
1105 2011-06-09 Luke Macpherson <macpherson@chromium.org>
1107 Reviewed by Eric Seidel.
1109 Code cleanup - add wrappers for function pointer dereferences to improve readability in ApplyPropertyDefaultBase and derived classes.
1110 https://bugs.webkit.org/show_bug.cgi?id=62418
1112 No new tests / cleanup only.
1114 * css/CSSStyleApplyProperty.cpp:
1115 (WebCore::ApplyPropertyDefaultBase::applyInheritValue):
1116 Use new wrapper functions.
1117 (WebCore::ApplyPropertyDefaultBase::applyInitialValue):
1118 Use new wrapper functions.
1119 (WebCore::ApplyPropertyDefaultBase::setValue):
1120 Wrapper for calling m_setter function pointer.
1121 (WebCore::ApplyPropertyDefaultBase::value):
1122 Wrapper for calling m_getter function pointer.
1123 (WebCore::ApplyPropertyDefaultBase::initial):
1124 Wrapper for calling m_initial function pointer.
1125 (WebCore::ApplyPropertyDefault::applyValue):
1126 Use new setValue function.
1127 (WebCore::ApplyPropertyLength::applyValue):
1128 Use new setValue function.
1129 (WebCore::ApplyPropertyWidth::applyValue):
1130 Use new setValue function.
1132 2011-06-09 Hyowon Kim <hw1008.kim@samsung.com>
1134 Reviewed by Antonio Gomes.
1136 [EFL] Make accelerated compositing build in Webkit-EFL
1137 https://bugs.webkit.org/show_bug.cgi?id=62361
1139 Add a new class, GraphicsLayerEfl - not yet implemented.
1140 Add ACCELERATED_COMPOSITING related files to CMakeLists.
1143 * CMakeListsEfl.txt:
1144 * platform/graphics/efl/GraphicsLayerEfl.cpp: Added.
1145 (WebCore::GraphicsLayer::create):
1146 (WebCore::GraphicsLayerEfl::GraphicsLayerEfl):
1147 (WebCore::GraphicsLayerEfl::~GraphicsLayerEfl):
1148 (WebCore::GraphicsLayerEfl::setNeedsDisplay):
1149 (WebCore::GraphicsLayerEfl::setNeedsDisplayInRect):
1150 * platform/graphics/efl/GraphicsLayerEfl.h: Added.
1152 2011-06-09 Jian Li <jianli@chromium.org>
1154 Reviewed by David Levin.
1156 Calling WebKitBlobBuilder.append with null argument should not crash
1157 https://bugs.webkit.org/show_bug.cgi?id=62419
1159 Test: fast/files/blob-builder-crash.html
1161 * fileapi/WebKitBlobBuilder.cpp:
1162 (WebCore::WebKitBlobBuilder::append):
1164 2011-06-09 Jer Noble <jer.noble@apple.com>
1166 Reviewed by David Hyatt.
1168 Roll out r88468, and fix bug #61911 without making Element::offset functions virtual.
1169 https://bugs.webkit.org/show_bug.cgi?id=62400
1171 No new tests; covered by existing fullscreen/full-screen-video-offset.html test.
1173 * rendering/RenderVideo.cpp:
1174 (WebCore::rendererPlaceholder): Added; returns the placeholder block, if it exists.
1175 (WebCore::RenderVideo::offsetLeft): Pass the offset request to the placeholder block.
1176 (WebCore::RenderVideo::offsetTop): Ditto.
1177 (WebCore::RenderVideo::offsetWidth): Ditto.
1178 (WebCore::RenderVideo::offsetHeight): Ditto.
1179 * rendering/RenderVideo.h: Added virtual overrides for the offset functions.
1181 2011-06-09 James Robinson <jamesr@chromium.org>
1183 Reviewed by Kenneth Russell.
1185 [chromium] Scissor rect not set for clipping layers set offscreen
1186 https://bugs.webkit.org/show_bug.cgi?id=62339
1188 We set a scissorRect on each layer, but only layers with masksToBounds and their descendants should actually set
1189 a scissor. Layers that didn't need to scissor had empty scissorRects. Unfortunately layers with masksToBounds
1190 and their descendants that are scrolled offscreen also end up with an empty clipped scissor rect.
1192 This patch sets an explicit bit on each layer that should scissor and then checks that bit instead of checking
1193 for an empty scissor rect at draw time. RenderSurfaceChromiums have different requirements for
1194 setScissorToRect, so the old behavior is still available with a flag. This can probably be cleaned up more.
1196 Test: platform/chromium/compositing/scissor-out-of-viewport.html
1198 * platform/graphics/chromium/LayerRendererChromium.cpp:
1199 (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
1200 (WebCore::LayerRendererChromium::drawLayer):
1201 (WebCore::LayerRendererChromium::setScissorToRect):
1202 * platform/graphics/chromium/LayerRendererChromium.h:
1203 * platform/graphics/chromium/RenderSurfaceChromium.cpp:
1204 (WebCore::RenderSurfaceChromium::draw):
1205 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1206 (WebCore::CCLayerImpl::CCLayerImpl):
1207 * platform/graphics/chromium/cc/CCLayerImpl.h:
1208 (WebCore::CCLayerImpl::setUsesLayerScissor):
1209 (WebCore::CCLayerImpl::usesLayerScissor):
1211 2011-06-09 Sheriff Bot <webkit.review.bot@gmail.com>
1213 Unreviewed, rolling out r88468.
1214 http://trac.webkit.org/changeset/88468
1215 https://bugs.webkit.org/show_bug.cgi?id=62408
1217 It broke build if !ENABLE(FULLSCREEN_API) (Requested by Ossy
1221 (WebCore::adjustForLocalZoom):
1223 * html/HTMLMediaElement.cpp:
1224 * html/HTMLMediaElement.h:
1226 2011-06-09 Kenneth Russell <kbr@google.com>
1228 Reviewed by Adam Barth.
1230 Disallow use of cross-domain media (images, video) in WebGL
1231 https://bugs.webkit.org/show_bug.cgi?id=62257
1233 Updated WebGL implementation to track recent spec updates in this area.
1235 Tests: http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html
1236 http/tests/security/webgl-remote-read-remote-image-allowed.html
1237 http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html
1239 * html/canvas/CanvasRenderingContext.cpp:
1240 (WebCore::CanvasRenderingContext::wouldTaintOrigin):
1241 (WebCore::CanvasRenderingContext::checkOrigin):
1242 * html/canvas/CanvasRenderingContext.h:
1243 (WebCore::CanvasRenderingContext::checkOrigin):
1244 * html/canvas/WebGLRenderingContext.cpp:
1245 (WebCore::WebGLRenderingContext::readPixels):
1246 (WebCore::WebGLRenderingContext::texImage2D):
1247 (WebCore::WebGLRenderingContext::videoFrameToImage):
1248 (WebCore::WebGLRenderingContext::texSubImage2D):
1249 * html/canvas/WebGLRenderingContext.h:
1251 2011-06-09 Adam Barth <abarth@webkit.org>
1253 Reviewed by Eric Seidel.
1255 Add an ASSERT to HTMLTreeBuilder
1256 https://bugs.webkit.org/show_bug.cgi?id=62403
1258 This ASSERT was useful in investigating a re-entrancy bug. We should
1261 * html/parser/HTMLTreeBuilder.cpp:
1262 (WebCore::HTMLTreeBuilder::processEndOfFile):
1264 2011-06-09 Dan Bernstein <mitz@apple.com>
1266 Reviewed by Darin Adler.
1268 Fix a regression from r88478.
1270 * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
1271 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Add the runs
1272 in reverse order in the RTL case here, since the whole vector is reversed by collectComplexTextRuns()
1275 2011-06-09 Julien Chaffraix <jchaffraix@codeaurora.org>
1277 Reviewed by Antti Koivisto.
1279 REGRESSION(84329): Stylesheets on some pages do not load
1280 https://bugs.webkit.org/show_bug.cgi?id=61400
1282 Test: fast/css/link-disabled-attr.html
1284 Fixed r84329: the change did not take into account the fact
1285 that HTMLLinkElement did already contain the disabled information
1286 and the 2 information were not linked as they should have!
1288 The new logic pushes the information to the stylesheet as this
1289 is what the spec mandates and what FF is doing. Also it keeps
1290 one bit of information (that JS enabled the stylesheet) as it
1291 is needed for the recalcStyleSelector logic.
1294 (WebCore::Document::recalcStyleSelector): s/isDisabled/disabled.
1296 * html/HTMLLinkElement.cpp:
1297 (WebCore::HTMLLinkElement::HTMLLinkElement): Removed m_disabledState,
1298 replaced by m_isEnabledViaScript.
1299 (WebCore::HTMLLinkElement::setDisabled): Updated the logic after
1300 m_disabledState removal. It also matches the spec by forwarding
1301 the disabled state to our stylesheet if we have one.
1302 (WebCore::HTMLLinkElement::parseMappedAttribute): Removed harmful
1303 handling of the disabledAttr.
1304 (WebCore::HTMLLinkElement::process): Updated after m_disabledState removal.
1305 * html/HTMLLinkElement.h:
1306 (WebCore::HTMLLinkElement::isEnabledViaScript): Ditto.
1307 (WebCore::HTMLLinkElement::isAlternate): Ditto.
1309 2011-06-09 Dan Bernstein <mitz@apple.com>
1311 Reviewed by Darin Adler.
1313 Simplify ComplexTextController::collectComplexTextRuns()
1314 https://bugs.webkit.org/show_bug.cgi?id=62387
1316 No new test, since functionality is unchanged.
1318 * platform/graphics/mac/ComplexTextController.cpp:
1319 (WebCore::ComplexTextController::collectComplexTextRuns): Always iterate characters in logical order,
1320 then reverse the run vector for RTL.
1322 2011-06-09 Dimitri Glazkov <dglazkov@chromium.org>
1324 Reviewed by Kent Tamura.
1326 Fold isShadowBoundary into isShadowRoot.
1327 https://bugs.webkit.org/show_bug.cgi?id=62317
1329 Since there are no longer cases where Node::isShadowBoundary() != Node::isShadowRoot, we can remove this function.
1331 In one case where isShadowBoundary was also tested to find ShadowContentElemnt, added a new isContentElement function.
1333 Refactoring, covered by existing tests.
1335 * css/CSSStyleSelector.cpp:
1336 (WebCore::isAtShadowBoundary): Changed to use isShadowRoot.
1338 (WebCore::Element::isSpellCheckingEnabled): Ditto.
1340 (WebCore::Node::nonBoundaryShadowTreeRootNode): Ditto.
1341 (WebCore::Node::nonShadowBoundaryParentNode): Ditto.
1343 (WebCore::Node::isContentElement): Added.
1344 * dom/NodeRenderingContext.cpp:
1345 (WebCore::NodeRenderingContext::NodeRenderingContext): Changed to use isShadowRoot.
1347 (WebCore::Position::Position): Ditto.
1348 * dom/ShadowContentElement.h:
1349 (WebCore::ShadowContentElement::isContentElement): Added.
1350 * dom/ShadowRoot.cpp:
1351 (WebCore::ShadowRoot::hasContentElement): Changed to use isContentElement.
1352 * editing/CompositeEditCommand.cpp:
1353 (WebCore::CompositeEditCommand::insertNodeAfter): Changed to use isShadowRoot.
1354 * editing/htmlediting.cpp:
1355 (WebCore::visiblePositionBeforeNode): Ditto.
1356 (WebCore::visiblePositionAfterNode): Ditto.
1357 * page/DragController.cpp:
1358 (WebCore::asFileInput): Ditto.
1359 * rendering/RenderTreeAsText.cpp:
1360 (WebCore::nodePosition): Ditto.
1362 2011-06-09 Simon Fraser <simon.fraser@apple.com>
1364 Reviewed by Darin Adler.
1366 Crashes in RenderLayerBacking::paintingGoesToWindow
1367 https://bugs.webkit.org/show_bug.cgi?id=61159
1369 Speculative fix for unreproducible crash that can occur when RenderObject::repaintUsingContainer()
1370 finds a repaintContainer that is not the RenderView, but that is also not
1371 composited (for unknown reasons), by checking to see if the layer is
1372 compositing before using backing(). An assertion remains to try to catch
1373 this in debug builds.
1375 * rendering/RenderLayer.cpp:
1376 (WebCore::RenderLayer::setBackingNeedsRepaintInRect):
1378 2011-06-09 Julien Chaffraix <jchaffraix@webkit.org>
1380 Reviewed by Darin Adler.
1382 WebCore::WebKitCSSKeyframesRuleInternal::nameAttrSetter() - crash
1383 https://bugs.webkit.org/show_bug.cgi?id=62384
1385 Test: fast/css/webkit-keyframes-crash.html
1387 * css/WebKitCSSKeyframesRule.cpp:
1388 (WebCore::WebKitCSSKeyframesRule::setName): stylesheet() is never garanteed
1389 to return a non-null pointer. Thus null-check here like the rest of the code.
1391 2011-06-09 Julien Chaffraix <jchaffraix@codeaurora.org>
1393 Reviewed by David Hyatt.
1395 chrome.dll!WebCore::RenderStyle::fontMetrics ReadAV@NULL (two crashes)
1396 https://bugs.webkit.org/show_bug.cgi?id=57756
1398 Tests: fast/css/fontMetric-border-radius-null-crash.html
1399 fast/css/fontMetric-webkit-border-end-width-null-crash.html
1401 * css/CSSStyleSelector.cpp:
1402 (WebCore::CSSStyleSelector::styleForElement): Added a call to Font::update
1403 so that our FontFallbackList is allocated if we ever need it when applying our
1406 2011-06-09 Cary Clark <caryclark@google.com>
1408 Reviewed by Eric Seidel.
1410 Create local CG context for Mac UI elements when Skia is renderer
1411 https://bugs.webkit.org/show_bug.cgi?id=62213
1413 When building Mac Chrome using Skia as the WebKit renderer,
1414 add state to LocalCurrentGraphicsContext to convert the SkCanvas
1415 context passed by WebKit into the CGContext needed by UI
1418 No new tests. The define typo in question is
1419 not yet enabled, so this change has no functional
1422 * platform/mac/LocalCurrentGraphicsContext.h:
1423 Add SkiaBitLocker to create and release the converted CGContext.
1424 Add ContextContainer, a class for Skia to create and release
1425 the converted CGContext. If Skia is not used, the class has no effect.
1427 * platform/mac/LocalCurrentGraphicsContext.mm:
1428 (WebCore::LocalCurrentGraphicsContext::LocalCurrentGraphicsContext):
1429 When building with Skia, create the CGContext before passing it on.
1431 (WebCore::LocalCurrentGraphicsContext::cgContext):
1432 Get the CGContext from the SkiaBitLocker, or the saved context,
1435 * rendering/RenderThemeMac.mm:
1436 Get the CGContext from Skia conversion or native, as appropriate.
1437 Use the LocalCurrentGraphicsContext if there is one. Otherwise,
1438 add a ContextContainer to house the SkCanvas to CGContext conversion.
1440 (WebCore::RenderThemeMac::paintCapsLockIndicator):
1441 (WebCore::RenderThemeMac::paintProgressBar):
1442 (WebCore::RenderThemeMac::paintMenuListButtonGradients):
1443 (WebCore::RenderThemeMac::paintSliderTrack):
1444 (WebCore::RenderThemeMac::paintMediaFullscreenButton):
1445 (WebCore::RenderThemeMac::paintMediaMuteButton):
1446 (WebCore::RenderThemeMac::paintMediaPlayButton):
1447 (WebCore::RenderThemeMac::paintMediaSeekBackButton):
1448 (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
1449 (WebCore::RenderThemeMac::paintMediaSliderTrack):
1450 (WebCore::RenderThemeMac::paintMediaSliderThumb):
1451 (WebCore::RenderThemeMac::paintMediaRewindButton):
1452 (WebCore::RenderThemeMac::paintMediaReturnToRealtimeButton):
1453 (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton):
1454 (WebCore::RenderThemeMac::paintMediaControlsBackground):
1455 (WebCore::RenderThemeMac::paintMediaCurrentTime):
1456 (WebCore::RenderThemeMac::paintMediaTimeRemaining):
1457 (WebCore::RenderThemeMac::paintMediaVolumeSliderContainer):
1458 (WebCore::RenderThemeMac::paintMediaVolumeSliderTrack):
1459 (WebCore::RenderThemeMac::paintMediaVolumeSliderThumb):
1461 2011-06-02 Jer Noble <jer.noble@apple.com>
1463 Reviewed by Maciej Stachowiak.
1465 REGRESSION: Page layout messed up after exiting full screen after video ends at jerryseinfeld.com
1466 https://bugs.webkit.org/show_bug.cgi?id=61911
1467 <rdar://problem/9523017>
1469 Test: fullscreen/full-screen-video-offset.html
1471 When the video element is taken full-screen in the new element full-screen API, return the
1472 offset width and height of the placeholder renderer which is filling in for the full-screen
1473 element. To do so, override offsetWidth, Height, Left, and Top from Element. These are
1474 non-virtual functions, so make them virtual.
1477 (WebCore::Element::adjustForLocalZoom): Made into a class-static function.
1478 * dom/Element.h: Made offset functions virtual.
1479 * html/HTMLMediaElement.cpp:
1480 (WebCore::elementPlaceholder): Added; utility function.
1481 (WebCore::HTMLMediaElement::offsetLeft): Added; virtual override of the
1482 Element function. Will be called directly via javascript.
1483 (WebCore::HTMLMediaElement::offsetTop): Ditto.
1484 (WebCore::HTMLMediaElement::offsetWidth): Ditto.
1485 (WebCore::HTMLMediaElement::offsetHeight): Ditto.
1486 * html/HTMLMediaElement.h:
1488 2011-06-09 Dave Tapuska <dtapuska@rim.com>
1490 Reviewed by Daniel Bates.
1492 PingLoader destructor could dereference 0 if the Resource
1493 Handle creation failed.
1495 https://bugs.webkit.org/show_bug.cgi?id=62304
1497 * loader/PingLoader.cpp:
1498 (WebCore::PingLoader::~PingLoader):
1500 2011-06-08 Abhishek Arya <inferno@chromium.org>
1502 Reviewed by Ryosuke Niwa.
1504 Make indexForVisiblePosition and isSelectableElement static.
1505 https://bugs.webkit.org/show_bug.cgi?id=62329
1507 This protects us when converting frame->selection->start() or end()
1508 to VisiblePosition which blows away the RenderTextControl from
1509 underneath (due to layout update).
1511 Test: fast/forms/text-control-selection-crash.html
1513 * accessibility/AccessibilityRenderObject.cpp:
1514 (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
1515 * rendering/RenderTextControl.cpp:
1516 (WebCore::RenderTextControl::selectionStart):
1517 (WebCore::RenderTextControl::selectionEnd):
1518 (WebCore::RenderTextControl::isSelectableElement):
1519 (WebCore::RenderTextControl::indexForVisiblePosition):
1520 * rendering/RenderTextControl.h:
1522 2011-06-09 Ben Murdoch <benm@google.com>
1524 Reviewed by Yury Semikhatsky.
1526 Build break in ScriptProfile.cpp and inspector disabled.
1527 https://bugs.webkit.org/show_bug.cgi?id=62373
1529 No new tests - build fix only.
1531 * bindings/v8/ScriptProfile.cpp: Add necessary guards.
1532 * bindings/v8/ScriptProfile.h: ditto.
1534 2011-06-09 Vsevolod Vlasov <vsevik@chromium.org>
1536 Reviewed by Yury Semikhatsky.
1538 Web Inspector: Network panel preview tab does not reattach SourceFrame when switching between preview and response tabs.
1539 https://bugs.webkit.org/show_bug.cgi?id=62298
1541 * inspector/front-end/ResourcePreviewView.js:
1542 (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown.callback):
1543 (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown):
1545 2011-06-09 Csaba Osztrogonác <ossy@webkit.org>
1547 [Qt][Mac] Speculative buildfix after r88286.
1549 * platform/graphics/IntPoint.h:
1551 2011-06-09 Mike Lawther <mikelawther@chromium.org>
1553 Reviewed by Kent Tamura.
1555 Parsing issue with -webkit-calc
1556 https://bugs.webkit.org/show_bug.cgi?id=62276
1558 Set the CSSParserString for the calc functions.
1560 Test: css3/calc/regression-62276.html
1562 * css/CSSParser.cpp:
1563 (WebCore::CSSParser::lex):
1565 2011-06-09 Robert Hogan <robert@webkit.org>
1567 Reviewed by Andreas Kling.
1569 Teach Qt about window.internals
1570 https://bugs.webkit.org/show_bug.cgi?id=61074
1572 A weakness of the Qt DRT setup is that things like JSContextRef are abstracted
1573 away from the QtWebKit API so we need DumpRenderTreeSupportQt to access WebCore internals.
1574 Since the window.internals object requires JSContextRef we need to implement it in DumpRenderTreeSupportQt
1575 where we can access it. DumpRenderTreeSupportQt cannot be compiled outside Qt's WebCore and as it
1576 is our only possible route into the WebCoreTestSupport class neither can the new window.internals plumbing.
1577 Likewise we can't put the accessor in WebCoreTestSupport because it would then need to know about QWebFrame
1578 and others. The only alternative seems like a compile time guard which we would have to teach the bots about.
1580 * CodeGenerators.pri:
1584 2011-06-08 Mikołaj Małecki <m.malecki@samsung.com>
1586 Reviewed by Pavel Feldman.
1588 Web Inspector: Crash by buffer overrun crash when serializing inspector object tree.
1589 https://bugs.webkit.org/show_bug.cgi?id=52791
1591 No new tests. The problem can be reproduced by trying to create InspectorValue
1592 from 1.0e-100 and call ->toJSONString() on this.
1594 * inspector/InspectorValues.cpp:
1595 (WebCore::InspectorBasicValue::writeJSON):
1596 Added checking the predicted buffer size and choosing exponential format, or
1597 eventually "NaN" if the buffer is too small for decimal format.
1599 2011-06-09 Sheriff Bot <webkit.review.bot@gmail.com>
1601 Unreviewed, rolling out r88387.
1602 http://trac.webkit.org/changeset/88387
1603 https://bugs.webkit.org/show_bug.cgi?id=62368
1605 New tests introduced in 88387 fail on Leopard,GTK,Qt bots
1606 (Requested by Ossy on #webkit).
1608 * html/canvas/CanvasRenderingContext.cpp:
1609 (WebCore::CanvasRenderingContext::checkOrigin):
1610 * html/canvas/CanvasRenderingContext.h:
1611 * html/canvas/WebGLRenderingContext.cpp:
1612 (WebCore::WebGLRenderingContext::readPixels):
1613 (WebCore::WebGLRenderingContext::texImage2D):
1614 (WebCore::WebGLRenderingContext::videoFrameToImage):
1615 (WebCore::WebGLRenderingContext::texSubImage2D):
1616 * html/canvas/WebGLRenderingContext.h:
1618 2011-06-09 Adam Barth <abarth@webkit.org>
1620 Reviewed by Eric Seidel.
1622 Running script from attach can remove elements from the stack of open elements
1623 https://bugs.webkit.org/show_bug.cgi?id=62160
1625 When the tree build runs script synchronously, that script can remove
1626 arbitrary elements from the stack of open elements. We need to hold a
1627 reference to |parent| in attach instead of rely upon the reference in
1628 the stack of open elements.
1630 Test: fast/parser/document-write-onload-clear.html
1632 * html/parser/HTMLConstructionSite.cpp:
1633 (WebCore::HTMLConstructionSite::attach):
1635 2011-06-08 Luke Macpherson <macpherson@chromium.org>
1637 Reviewed by Eric Seidel.
1639 Make CSSPrimitiveValue support cast to EVerticalAlign.
1640 https://bugs.webkit.org/show_bug.cgi?id=62356
1642 No new tests / refactoring only.
1644 * css/CSSPrimitiveValueMappings.h:
1645 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1646 (WebCore::CSSPrimitiveValue::operator EVerticalAlign):
1647 * css/CSSStyleSelector.cpp:
1648 (WebCore::CSSStyleSelector::applyProperty):
1650 2011-06-08 Justin Novosad <junov@chromium.org>
1652 Reviewed by James Robinson.
1654 [Chromium] Crash when closing a tab with accelerated 2d canvas
1655 https://bugs.webkit.org/show_bug.cgi?id=62324
1656 Upon graphics context destruction, it is important to signal skia
1657 to abandon all of its resource handles. This prevents a crash caused
1658 by skia attempting to release resources that were in the destroyed
1661 * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
1662 (WebCore::SharedGraphicsContext3D::~SharedGraphicsContext3D):
1664 2011-06-08 James Robinson <jamesr@chromium.org>
1666 Reviewed by Darin Fisher.
1668 REGRESSION(88260): 10-50% performance regression across many page cyclers
1669 https://bugs.webkit.org/show_bug.cgi?id=62349
1671 r88260 fixed a font cache resource leak and lowered the inactive font cache threshold. The latter caused a
1672 significant performance regression across many chromium page cyclers, for example
1673 http://build.chromium.org/f/chromium/perf/linux-release-webkit-latest/moz/report.html?history=50&rev=88279.
1675 This restores the previous inactive font size thresholds to their previous values, but retains the font cleanup
1678 * platform/graphics/FontCache.cpp:
1680 2011-06-08 Hayato Ito <hayato@chromium.org>
1682 Reviewed by Dimitri Glazkov.
1684 A forward/backward tab traversal now visits focusable elements in a shadow root.
1685 https://bugs.webkit.org/show_bug.cgi?id=61410
1687 Test: fast/dom/shadow/tab-order-iframe-and-shadow.html
1689 Like a iframe element, a shadow host becomes a scope of
1690 tabindex. That means all descendant elements in a shadow root are
1691 skipped if the host node of the shadow root is not focusable.
1693 The patch doesn't affect HTMLInputElement and HTMLTextAreaElement,
1694 which uses a shadow root and do extra works in their focus()
1697 A shadow root's <content> is not considered in this patch.
1698 That will be addressed in a following patch.
1700 * page/FocusController.cpp:
1701 (WebCore::shadowRoot):
1702 (WebCore::isTreeScopeOwner):
1703 (WebCore::FocusController::deepFocusableNode):
1704 (WebCore::FocusController::advanceFocusInDocumentOrder):
1705 (WebCore::FocusController::findFocusableNodeAcrossTreeScope):
1706 (WebCore::FocusController::findFocusableNode):
1707 (WebCore::FocusController::nextFocusableNode):
1708 (WebCore::FocusController::previousFocusableNode):
1709 (WebCore::FocusController::ownerOfTreeScope):
1710 * page/FocusController.h:
1712 2011-06-08 Hayato Ito <hayato@chromium.org>
1714 Reviewed by Hajime Morita.
1716 Makes sure that document.activeElement won't be an element in shadow root.
1718 https://bugs.webkit.org/show_bug.cgi?id=61413
1720 Test: fast/dom/shadow/activeelement-should-be-shadowhost.html
1722 * html/HTMLDocument.cpp:
1723 (WebCore::focusedFrameOwnerElement):
1724 (WebCore::HTMLDocument::activeElement):
1726 2011-06-08 Kent Tamura <tkent@chromium.org>
1728 Reviewed by Dimitri Glazkov.
1730 Allow drawing a slider thumb for any nodes.
1731 https://bugs.webkit.org/show_bug.cgi?id=62196
1733 RenderObject::node() should provide various information which is
1734 necessary for rendering. We don't need to refer the parent renderer.
1737 (WebCore::Node::focusDe1egate): Added.
1738 * dom/Node.h: Added a declaration.
1739 * html/shadow/MediaControlElements.cpp:
1740 (WebCore::toParentMediaElement):
1741 Added an overload of toParentMediaElement() with Node* parameter.
1742 * html/shadow/MediaControlElements.h:
1743 (WebCore::toParentMediaElement): ditto.
1744 * html/shadow/SliderThumbElement.cpp:
1745 (WebCore::SliderThumbElement::isEnabledFormControl):
1746 Returns the status of the host node.
1747 (WebCore::SliderThumbElement::isReadOnlyFormControl): ditto.
1748 (WebCore::SliderThumbElement::focusDe1egate):
1749 Returns the host node so that RenderTheme::isFocused() returns true.
1750 (WebCore::SliderThumbElement::detach): Style nit.
1751 (WebCore::SliderThumbElement::hostInput):
1752 Make it const because it is called by const functions.
1753 * html/shadow/SliderThumbElement.h:
1754 - Remove inDragMode()
1755 - Update declarations
1756 * platform/qt/RenderThemeQt.cpp:
1757 (WebCore::RenderThemeQt::paintMediaSliderThumb):
1758 Use Node::shadowAncestorNode() instead of RenderObject::parent() to
1759 support deeper thumb nodes.
1760 * rendering/RenderMediaControlsChromium.cpp:
1761 (WebCore::paintMediaSliderThumb): ditto.
1762 (WebCore::paintMediaVolumeSliderThumb): Remove isSlider() check.
1763 * rendering/RenderSlider.cpp:
1764 (WebCore::RenderSlider::inDragMode):
1765 SliderThumbElement::inDragMode() was removed, and Node::active() has
1766 the same information.
1767 * rendering/RenderTheme.cpp:
1768 (WebCore::RenderTheme::paint): Remove isSlider() checks.
1769 (WebCore::RenderTheme::isFocused): Apply Node::focusDelegate().
1770 * rendering/RenderThemeChromiumLinux.cpp:
1771 (WebCore::RenderThemeChromiumLinux::paintSliderThumb):
1772 isPressed() is enough.
1773 * rendering/RenderThemeChromiumWin.cpp:
1774 isEnabled(), isFocused(), and isPressed() are enough.
1775 (WebCore::RenderThemeChromiumWin::determineSliderThumbState):
1776 (WebCore::RenderThemeChromiumWin::determineClassicState):
1777 * rendering/RenderThemeMac.mm:
1778 (WebCore::RenderThemeMac::paintSliderThumb):
1779 - Remove isSlider() check.
1780 - Passing 'o' to udpateFooState functions is enough.
1781 - isPressed() is enough.
1782 * rendering/RenderThemeSafari.cpp:
1783 (WebCore::RenderThemeSafari::paintSliderThumb):
1784 We don't need special handling anymore.
1785 * rendering/RenderThemeWin.cpp:
1786 (WebCore::RenderThemeWin::determineSliderThumbState):
1787 isEnabled(), isFocused(), and isPressed() are enough.
1789 2011-06-08 Adam Barth <abarth@webkit.org>
1791 Reviewed by Eric Seidel.
1793 constructTreeFromToken can re-enter parser, causing ASSERTs
1794 https://bugs.webkit.org/show_bug.cgi?id=62160
1796 This patch clears the HTMLToken before constructing the tree from the
1797 token, putting the HTMLDocumentParser in a good state to be re-entered.
1799 Tests: fast/parser/document-write-onload-nesting.html
1800 fast/parser/document-write-onload-ordering.html
1802 * html/parser/HTMLDocumentParser.cpp:
1803 (WebCore::HTMLDocumentParser::pumpTokenizer):
1804 * html/parser/HTMLToken.h:
1805 (WebCore::HTMLToken::isUninitialized):
1806 * html/parser/HTMLTreeBuilder.cpp:
1807 (WebCore::HTMLTreeBuilder::constructTreeFromToken):
1809 2011-06-08 Kent Tamura <tkent@chromium.org>
1811 Fix Qt build for r88405.
1812 https://bugs.webkit.org/show_bug.cgi?id=62208
1814 * platform/qt/RenderThemeQt.h:
1816 2011-06-08 Kent Tamura <tkent@chromium.org>
1818 Reviewed by Dimitri Glazkov.
1820 Change the argument of RenderTheme::adjustSliderThumbSize(): RenderObject* -> RenderStyle*
1821 https://bugs.webkit.org/show_bug.cgi?id=62208
1823 Change the argument type of RenderTheme::adjustSliderThumbSize() and
1824 RenderMediaControls::adjustMediaSliderThumbSize() from RenderObject* to RenderStyle*.
1826 Also, each of adjustSliderThumbStyle() overrides calls RenderTheme::
1827 adjustSliderThumbStyle() for future changes.
1829 No new tests. This is a refactoring and should not change any behavior.
1831 * html/shadow/SliderThumbElement.cpp:
1832 (WebCore::RenderSliderThumb::layout): Passing RenderStyle* and remove a FIXME comment.
1833 * platform/efl/RenderThemeEfl.cpp:
1834 (WebCore::RenderThemeEfl::adjustSliderThumbStyle): Calls RenderTheme::adjustSliderThumbStyle().
1835 * platform/gtk/RenderThemeGtk.cpp:
1836 (WebCore::RenderThemeGtk::adjustSliderThumbStyle): ditto.
1837 (WebCore::RenderThemeGtk::adjustMediaSliderThumbSize):
1838 * platform/gtk/RenderThemeGtk.h:
1839 * platform/gtk/RenderThemeGtk2.cpp:
1840 (WebCore::RenderThemeGtk::adjustSliderThumbSize):
1841 * platform/gtk/RenderThemeGtk3.cpp:
1842 (WebCore::RenderThemeGtk::adjustSliderThumbSize):
1843 * platform/qt/RenderThemeQt.cpp:
1844 (WebCore::RenderThemeQt::adjustSliderThumbStyle): ditto.
1845 (WebCore::RenderThemeQt::adjustSliderThumbSize):
1846 * rendering/RenderMediaControls.cpp:
1847 (WebCore::RenderMediaControls::adjustMediaSliderThumbSize):
1848 * rendering/RenderMediaControls.h:
1849 * rendering/RenderMediaControlsChromium.cpp:
1850 (WebCore::RenderMediaControlsChromium::adjustMediaSliderThumbSize):
1851 * rendering/RenderMediaControlsChromium.h:
1852 * rendering/RenderSlider.cpp:
1853 (WebCore::RenderSlider::layout): Passing RenderStyle* and remove a FIXME comment.
1854 * rendering/RenderTheme.cpp:
1855 (WebCore::RenderTheme::adjustSliderThumbStyle): Add a comment.
1856 (WebCore::RenderTheme::adjustSliderThumbSize):
1857 * rendering/RenderTheme.h:
1858 * rendering/RenderThemeChromiumLinux.cpp:
1859 (WebCore::RenderThemeChromiumLinux::adjustSliderThumbSize):
1860 * rendering/RenderThemeChromiumLinux.h:
1861 * rendering/RenderThemeChromiumMac.h:
1862 * rendering/RenderThemeChromiumMac.mm:
1863 (WebCore::RenderThemeChromiumMac::adjustMediaSliderThumbSize):
1864 * rendering/RenderThemeChromiumSkia.cpp:
1865 (WebCore::RenderThemeChromiumSkia::adjustSliderThumbSize):
1866 * rendering/RenderThemeChromiumSkia.h:
1867 * rendering/RenderThemeChromiumWin.cpp:
1868 (WebCore::RenderThemeChromiumWin::adjustSliderThumbSize):
1869 * rendering/RenderThemeChromiumWin.h:
1870 * rendering/RenderThemeMac.h:
1871 * rendering/RenderThemeMac.mm:
1872 (WebCore::RenderThemeMac::adjustSliderThumbStyle): Calls RenderTheme::adjustSliderThumbStyle().
1873 (WebCore::RenderThemeMac::adjustSliderThumbSize):
1874 (WebCore::RenderThemeMac::adjustMediaSliderThumbSize):
1875 * rendering/RenderThemeSafari.cpp:
1876 (WebCore::RenderThemeSafari::adjustSliderThumbStyle): Calls RenderTheme::adjustSliderThumbStyle().
1877 (WebCore::RenderThemeSafari::adjustSliderThumbSize):
1878 * rendering/RenderThemeSafari.h:
1879 * rendering/RenderThemeWin.cpp:
1880 (WebCore::RenderThemeWin::adjustSliderThumbSize):
1881 * rendering/RenderThemeWin.h:
1882 * rendering/RenderThemeWinCE.cpp:
1883 (WebCore::RenderThemeWinCE::adjustSliderThumbSize):
1884 * rendering/RenderThemeWinCE.h:
1886 2011-06-08 Brian Salomon <bsalomon@google.com>
1888 Reviewed by James Robinson.
1890 Avoid always binding FBO 0 implicitly when deleting FBO in DrawingBuffer code because it invalidates Ganesh's cache of the current FBO.
1891 https://bugs.webkit.org/show_bug.cgi?id=62318
1894 Failures takes multiple seconds to occur, relying on JS garbage-collection to occur
1895 http://www.hotbazooka.com/privatejoe-large
1897 * platform/graphics/gpu/DrawingBuffer.cpp:
1898 (WebCore::DrawingBuffer::clear):
1900 2011-06-08 Emil A Eklund <eae@chromium.org>
1902 Reviewed by Eric Seidel.
1904 RenderEmbeddedObject::getReplacementTextGeometry
1905 https://bugs.webkit.org/show_bug.cgi?id=62313
1907 Replace the last use of tx, ty with IntPoint.
1909 Covered by existing tests.
1911 * platform/graphics/FloatRect.h:
1912 (WebCore::FloatRect::move):
1913 (WebCore::FloatRect::moveBy):
1914 * rendering/RenderEmbeddedObject.cpp:
1915 (WebCore::RenderEmbeddedObject::paintReplaced):
1916 (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
1917 (WebCore::RenderEmbeddedObject::isInMissingPluginIndicator):
1918 * rendering/RenderEmbeddedObject.h:
1920 2011-06-08 Tim Horton <timothy_horton@apple.com>
1922 Reviewed by Ryosuke Niwa.
1924 Use correct CFURLStorageSessionRef definition on Leopard, as
1925 we created an inconsistency in const-ness between
1926 WebCoreSystemInterface.h and these two files in the case
1928 https://bugs.webkit.org/show_bug.cgi?id=62223
1930 * platform/network/ResourceHandle.h:
1931 * platform/network/cf/ResourceRequest.h:
1933 2011-06-08 Sailesh Agrawal <sail@chromium.org>
1935 Reviewed by Mihai Parparita.
1937 Chromium Mac: Enable overlay scrollbars
1938 https://bugs.webkit.org/show_bug.cgi?id=59756
1940 Sync ScrollbarThemeChromiumMac.mm/.h with ScrollbarThemeMac.mm to pick up support for overlay scrollbars. The only changes are renaming ScrollbarThemeMac to ScrollbarThemeChromiumMac and using runtime checks instead of #ifdef's.
1942 No new tests, since this code is only enabled on future versions of Mac OS X.
1944 * platform/chromium/ScrollAnimatorChromiumMac.mm: All changes to this file except in scroll() were to swap #if USE(WK_SCROLLBAR_PAINTER) with runtime checks.
1945 (WebCore::ScrollAnimatorChromiumMac::ScrollAnimatorChromiumMac):
1946 (WebCore::ScrollAnimatorChromiumMac::~ScrollAnimatorChromiumMac):
1947 (WebCore::ScrollAnimatorChromiumMac::notityPositionChanged):
1948 (WebCore::ScrollAnimatorChromiumMac::contentAreaWillPaint):
1949 (WebCore::ScrollAnimatorChromiumMac::mouseEnteredContentArea):
1950 (WebCore::ScrollAnimatorChromiumMac::mouseExitedContentArea):
1951 (WebCore::ScrollAnimatorChromiumMac::mouseMovedInContentArea):
1952 (WebCore::ScrollAnimatorChromiumMac::willStartLiveResize):
1953 (WebCore::ScrollAnimatorChromiumMac::contentsResized):
1954 (WebCore::ScrollAnimatorChromiumMac::willEndLiveResize):
1955 (WebCore::ScrollAnimatorChromiumMac::contentAreaDidShow):
1956 (WebCore::ScrollAnimatorChromiumMac::contentAreaDidHide):
1957 (WebCore::ScrollAnimatorChromiumMac::didBeginScrollGesture):
1958 (WebCore::ScrollAnimatorChromiumMac::didEndScrollGesture):
1959 (WebCore::ScrollAnimatorChromiumMac::didAddVerticalScrollbar):
1960 (WebCore::ScrollAnimatorChromiumMac::willRemoveVerticalScrollbar):
1961 (WebCore::ScrollAnimatorChromiumMac::didAddHorizontalScrollbar):
1962 (WebCore::ScrollAnimatorChromiumMac::willRemoveHorizontalScrollbar):
1963 (WebCore::ScrollAnimatorChromiumMac::cancelAnimations):
1964 * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.mm:
1965 (preferredScrollerStyle): Disabled overlay scrollbar styles due to trailing artifacts.
1966 (wkScrollbarPainterPaint): Fixed a problem where the scrollbar track wasn't being drawn.
1967 (wkScrollbarPainterKnobRect): Implemented a previously unimplemented function.
1968 (wkSetScrollbarPainterKnobStyle): Implemented a function that's now supported by the latest Mac OS X seeds.
1969 (isScrollbarOverlayAPIAvailable): Enabled new scrollbar code.
1970 * platform/chromium/ScrollbarThemeChromiumMac.h:
1971 * platform/chromium/ScrollbarThemeChromiumMac.mm: Sync with ScrollbarThemeMac.mm.
1972 (WebCore::scrollbarMap):
1973 (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
1974 (WebCore::updateArrowPlacement):
1975 (WebCore::ScrollbarThemeChromiumMac::registerScrollbar):
1976 (WebCore::ScrollbarThemeChromiumMac::unregisterScrollbar):
1977 (WebCore::ScrollbarThemeChromiumMac::setNewPainterForScrollbar):
1978 (WebCore::ScrollbarThemeChromiumMac::painterForScrollbar):
1979 (WebCore::ScrollbarThemeChromiumMac::scrollbarThickness):
1980 (WebCore::ScrollbarThemeChromiumMac::usesOverlayScrollbars):
1981 (WebCore::ScrollbarThemeChromiumMac::hasButtons):
1982 (WebCore::ScrollbarThemeChromiumMac::hasThumb):
1983 (WebCore::buttonRepaintRect):
1984 (WebCore::ScrollbarThemeChromiumMac::minimumThumbLength):
1985 (WebCore::ScrollbarThemeChromiumMac::shouldDragDocumentInsteadOfThumb):
1986 (WebCore::toScrollbarPainterKnobStyle):
1987 (WebCore::ScrollbarThemeChromiumMac::paint):
1989 2011-06-06 Nate Chapin <japhet@chromium.org>
1991 Reviewed by Adam Barth.
1993 Remove all knowledge of CachedResourceRequests from
1994 CachedResourceLoader. This puts the full burden of
1995 canceling these requests on DocumentLoader (via
1996 SubresourceLoader), and makes a CachedResourceRequest
1997 an OwnPtr in CachedResource.
1999 https://bugs.webkit.org/show_bug.cgi?id=62308
2001 * loader/FrameLoader.cpp:
2002 (WebCore::FrameLoader::stopLoading):
2003 * loader/cache/CachedResource.cpp:
2004 (WebCore::CachedResource::CachedResource):
2005 (WebCore::CachedResource::load):
2006 (WebCore::CachedResource::stopLoading):
2007 * loader/cache/CachedResource.h:
2008 * loader/cache/CachedResourceLoader.cpp:
2009 (WebCore::CachedResourceLoader::~CachedResourceLoader):
2010 (WebCore::CachedResourceLoader::loadDone):
2011 * loader/cache/CachedResourceLoader.h:
2012 * loader/cache/CachedResourceRequest.cpp:
2013 (WebCore::CachedResourceRequest::CachedResourceRequest):
2014 (WebCore::CachedResourceRequest::~CachedResourceRequest):
2015 (WebCore::CachedResourceRequest::load):
2016 (WebCore::CachedResourceRequest::didFinishLoading):
2017 (WebCore::CachedResourceRequest::didFail):
2018 (WebCore::CachedResourceRequest::didReceiveResponse):
2019 (WebCore::CachedResourceRequest::end):
2020 * loader/cache/CachedResourceRequest.h:
2022 2011-06-08 Mike Reed <reed@google.com>
2024 Reviewed by James Robinson.
2026 [Skia] check for null-shader from gradient factory
2027 https://bugs.webkit.org/show_bug.cgi?id=62319
2029 * platform/graphics/skia/GradientSkia.cpp:
2030 (WebCore::Gradient::platformDestroy):
2031 (WebCore::Gradient::platformGradient):
2033 2011-06-08 Kenneth Russell <kbr@google.com>
2035 Reviewed by Adam Barth.
2037 Disallow use of cross-domain media (images, video) in WebGL
2038 https://bugs.webkit.org/show_bug.cgi?id=62257
2040 Updated WebGL implementation to track recent spec updates in this area.
2042 Tests: http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html
2043 http/tests/security/webgl-remote-read-remote-image-allowed.html
2044 http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html
2046 * html/canvas/CanvasRenderingContext.cpp:
2047 (WebCore::CanvasRenderingContext::wouldTaintOrigin):
2048 (WebCore::CanvasRenderingContext::checkOrigin):
2049 * html/canvas/CanvasRenderingContext.h:
2050 (WebCore::CanvasRenderingContext::checkOrigin):
2051 * html/canvas/WebGLRenderingContext.cpp:
2052 (WebCore::WebGLRenderingContext::readPixels):
2053 (WebCore::WebGLRenderingContext::texImage2D):
2054 (WebCore::WebGLRenderingContext::videoFrameToImage):
2055 (WebCore::WebGLRenderingContext::texSubImage2D):
2056 * html/canvas/WebGLRenderingContext.h:
2058 2011-06-08 John Bauman <jbauman@chromium.org>
2060 Reviewed by James Robinson.
2062 Only draw portions of tiles in contentRect
2063 https://bugs.webkit.org/show_bug.cgi?id=62243
2065 Old garbage data can remain in tiles, so make sure to draw only those
2066 portions that are supposed to be drawn.
2068 Test: compositing/repaint/shrink-layer.html
2070 * platform/graphics/chromium/LayerTilerChromium.cpp:
2071 (WebCore::LayerTilerChromium::draw):
2073 2011-06-08 Emil A Eklund <eae@chromium.org>
2075 Reviewed by Eric Seidel.
2077 Convert RenderBlock::isPointInOverflowControl to IntPoint
2078 https://bugs.webkit.org/show_bug.cgi?id=62312
2080 Covered by existing tests.
2082 * rendering/RenderBlock.cpp:
2083 (WebCore::RenderBlock::isPointInOverflowControl):
2084 (WebCore::RenderBlock::nodeAtPoint):
2085 * rendering/RenderBlock.h:
2086 * rendering/RenderListBox.cpp:
2087 (WebCore::RenderListBox::isPointInOverflowControl):
2088 * rendering/RenderListBox.h:
2090 2011-06-08 James Simonsen <simonjam@chromium.org>
2092 Reviewed by Tony Gentilcore.
2094 Fix clang issue, virtual function const mismatch
2095 https://bugs.webkit.org/show_bug.cgi?id=62307
2097 No new tests. Built with clang & ran layout tests.
2099 * page/MediaStreamFrameController.h:
2100 (WebCore::MediaStreamFrameController::GenericClient::isGenericClient):
2102 2011-06-08 Chris Rogers <crogers@google.com>
2104 Reviewed by Kenneth Russell.
2106 Implement BiquadFilterNode for filter types: LOWPASS, HIGHPASS, BANDPASS, LOWSHELF, HIGHSHELF, PEAKING, NOTCH, ALLPASS
2107 https://bugs.webkit.org/show_bug.cgi?id=62078
2109 No new tests since audio API is not yet implemented.
2111 * DerivedSources.make:
2113 * WebCore.xcodeproj/project.pbxproj:
2114 * platform/audio/Biquad.cpp:
2115 (WebCore::Biquad::Biquad):
2116 (WebCore::Biquad::reset):
2117 (WebCore::Biquad::setLowpassParams):
2118 (WebCore::Biquad::setHighpassParams):
2119 (WebCore::Biquad::setNormalizedCoefficients):
2120 (WebCore::Biquad::setLowShelfParams):
2121 (WebCore::Biquad::setHighShelfParams):
2122 (WebCore::Biquad::setPeakingParams):
2123 (WebCore::Biquad::setAllpassParams):
2124 (WebCore::Biquad::setNotchParams):
2125 (WebCore::Biquad::setBandpassParams):
2126 (WebCore::Biquad::setZeroPolePairs):
2127 (WebCore::Biquad::setAllpassPole):
2128 * platform/audio/Biquad.h:
2129 * webaudio/AudioContext.cpp:
2130 (WebCore::AudioContext::createBiquadFilter):
2131 (WebCore::AudioContext::createLowPass2Filter):
2132 (WebCore::AudioContext::createHighPass2Filter):
2133 * webaudio/AudioContext.h:
2134 * webaudio/AudioContext.idl:
2135 * webaudio/AudioNode.h:
2136 * webaudio/BiquadDSPKernel.cpp:
2137 (WebCore::BiquadDSPKernel::process):
2138 * webaudio/BiquadFilterNode.cpp: Added.
2139 (WebCore::BiquadFilterNode::BiquadFilterNode):
2140 * webaudio/BiquadFilterNode.h: Added.
2141 (WebCore::BiquadFilterNode::create):
2142 (WebCore::BiquadFilterNode::type):
2143 (WebCore::BiquadFilterNode::setType):
2144 (WebCore::BiquadFilterNode::frequency):
2145 (WebCore::BiquadFilterNode::q):
2146 (WebCore::BiquadFilterNode::gain):
2147 (WebCore::BiquadFilterNode::biquadProcessor):
2148 * webaudio/BiquadFilterNode.idl: Added.
2149 * webaudio/BiquadProcessor.cpp:
2150 (WebCore::BiquadProcessor::BiquadProcessor):
2151 * webaudio/BiquadProcessor.h:
2152 (WebCore::BiquadProcessor::setType):
2153 * webaudio/HighPass2FilterNode.cpp:
2154 (WebCore::HighPass2FilterNode::HighPass2FilterNode):
2155 * webaudio/LowPass2FilterNode.cpp:
2156 (WebCore::LowPass2FilterNode::LowPass2FilterNode):
2158 2011-06-08 No'am Rosenthal <noam.rosenthal@nokia.com>
2160 Reviewed by Kenneth Rohde Christiansen.
2162 WebKit2: Enable serializing of data types needed for cross-process accelerated compositing
2163 https://bugs.webkit.org/show_bug.cgi?id=61694
2165 No new tests, code path is not activated yet.
2167 * WebCore.xcodeproj/project.pbxproj: Changed the TransformOperation subclassed from "project" to "private"
2169 2011-06-08 Tom Sepez <tsepez@chromium.org>
2171 Reviewed by Adam Barth.
2173 Cause checks for insecure content blocking policy to callback to client.
2174 https://bugs.webkit.org/show_bug.cgi?id=61946
2175 Tests: platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-allowed.html
2176 platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-blocked.html
2177 platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-allowed.html
2178 platform/chromium/http/tests/security/mixedContent/insecure-script-in-main-frame-blocked.html
2180 * loader/FrameLoader.cpp:
2181 (WebCore::FrameLoader::checkIfDisplayInsecureContent):
2182 (WebCore::FrameLoader::checkIfRunInsecureContent):
2183 * loader/FrameLoaderClient.h:
2184 (WebCore::FrameLoaderClient::allowDisplayingInsecureContent):
2185 (WebCore::FrameLoaderClient::allowRunningInsecureContent):
2187 2011-06-08 Kevin Ollivier <kevino@theolliviers.com>
2189 [wx] Build fix after introduction of FontCache::ShouldRetain
2191 * platform/graphics/wx/FontCacheWx.cpp:
2192 (WebCore::FontCache::getFontDataForCharacters):
2194 2011-06-08 Sheriff Bot <webkit.review.bot@gmail.com>
2196 Unreviewed, rolling out r88365.
2197 http://trac.webkit.org/changeset/88365
2198 https://bugs.webkit.org/show_bug.cgi?id=62301
2200 windows bots broken (Requested by loislo_ on #webkit).
2202 * inspector/InspectorValues.cpp:
2203 (WebCore::InspectorBasicValue::writeJSON):
2205 2011-06-08 Mikołaj Małecki <m.malecki@samsung.com>
2207 Reviewed by Pavel Feldman.
2209 Web Inspector: Crash by buffer overrun crash when serializing inspector object tree.
2210 https://bugs.webkit.org/show_bug.cgi?id=52791
2212 No new tests. The problem can be reproduced by trying to create InspectorValue
2213 from 1.0e-100 and call ->toJSONString() on this.
2215 * inspector/InspectorValues.cpp:
2216 (WebCore::InspectorBasicValue::writeJSON):
2217 Added checking the predicted buffer size and choosing exponential format, or
2218 eventually "NaN" if the buffer is too small for decimal format.
2220 2011-06-08 Nico Weber <thakis@chromium.org>
2222 Reviewed by Darin Adler.
2224 Fix a ?: precedence error in ScrollbarThemeMac and ScrollbarThemeChromium
2225 https://bugs.webkit.org/show_bug.cgi?id=62295
2227 This was found by a new warning recently added to clang's -Wparentheses
2229 * platform/chromium/ScrollbarThemeChromiumMac.mm:
2230 (WebCore::ScrollbarThemeChromiumMac::backButtonRect):
2231 * platform/mac/ScrollbarThemeMac.mm:
2232 (WebCore::ScrollbarThemeMac::backButtonRect):
2234 2011-06-08 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
2236 Reviewed by Andreas Kling.
2238 [Qt] Remove dead code from our JSC bridge
2239 https://bugs.webkit.org/show_bug.cgi?id=62287
2241 The m_defaultMethod member is not used since r36848 and QtMethod
2242 was replaced by QtRuntimeMethod and subclasses in r29729.
2244 * bridge/qt/qt_instance.cpp:
2245 (JSC::Bindings::QtInstance::removeCachedMethod):
2246 (JSC::Bindings::QtInstance::visitAggregate):
2247 * bridge/qt/qt_instance.h:
2248 * bridge/qt/qt_runtime.h:
2250 2011-06-08 Ryan Sleevi <rsleevi@chromium.org>
2252 Reviewed by Tony Chang.
2254 Suppress C++0x compat warnings when compiling Chromium port with GCC 4.6
2256 Compiling Chromium port under GCC 4.6 produces warnings about nullptr
2257 https://bugs.webkit.org/show_bug.cgi?id=62242
2259 * WebCore.gyp/WebCore.gyp:
2261 2011-05-25 Xiaomei Ji <xji@chromium.org>
2263 Reviewed by Ryosuke Niwa.
2265 --webkit-visual-word does not work well in words separated by multiple spaces
2266 https://bugs.webkit.org/show_bug.cgi?id=61324
2268 Remove positionBeforeNextWord and positionAfterPreviousWord short-cuts. They try to find the
2269 right word boundary (before the space or after the space) by using previousWordPosition and
2270 nextWordPosition. But they assume words are separated by single space and are not correct
2271 for words separated by multiple spaces and words not separated by space.
2273 Consider positionBeforeNextWord() for example,
2275 First, it checks whether the current position is after the current word by checking current
2276 position's previousWordPosition's nextWordPosition is the same as current position, which is
2277 wrong for words separated by multiple spaces. For example, given words A and B separated by
2278 3 continuous spaces "A B", position "A|", "A |", and "A |" should all be considered as
2279 position after current word. But for position "A |", its previousWordPosition's
2280 nextWordPosition is position "A|", which is different from its current position, so the
2281 current position is not considered as a position after current word, consequently,
2282 instead of returning the right position as "A |B", positionBeforeNextWord returns the
2283 position before next next word, as "A B |C". Similar happens for position "A |".
2285 Second, given 3 Chinese words "ABC" that are not segmented by space, when cursor is at
2286 "A|BC", positionBeforeNextWord() returns the same position after calling current position's
2287 nextWordPosition's previousWordPosition. It should returns position "AB|C".
2289 For those cases, we will have to collect all the word breaks inside the box and look for
2290 the one at left or right of current position.
2292 * editing/visible_units.cpp:
2293 (WebCore::leftWordPosition):
2294 (WebCore::rightWordPosition):
2296 2011-06-08 Greg Simon <gregsimon@chromium.org>
2298 Reviewed by Dimitri Glazkov.
2300 Control Indexeddb backends from LayoutTestController
2301 https://bugs.webkit.org/show_bug.cgi?id=61000
2303 Test: storage/indexeddb/migrate-basics.html
2305 * storage/IDBBackingStore.h:
2306 * storage/IDBFactoryBackendImpl.cpp:
2307 (WebCore::IDBFactoryBackendImpl::open):
2308 (WebCore::IDBFactoryBackendImpl::migrate):
2309 * storage/IDBFactoryBackendImpl.h:
2310 * storage/IDBFactoryBackendInterface.h:
2311 * storage/IDBLevelDBBackingStore.cpp:
2312 (WebCore::IDBLevelDBBackingStore::backingStoreExists):
2313 * storage/IDBLevelDBBackingStore.h:
2314 (WebCore::IDBLevelDBBackingStore::backingStoreType):
2315 * storage/IDBSQLiteBackingStore.cpp:
2316 (WebCore::IDBSQLiteBackingStore::backingStoreExists):
2317 * storage/IDBSQLiteBackingStore.h:
2318 (WebCore::IDBSQLiteBackingStore::backingStoreType):
2320 2011-06-08 Dmitry Lomov <dslomov@google.com>
2322 Reviewed by Adam Barth.
2324 https://bugs.webkit.org/show_bug.cgi?id=62164
2325 Remove "multi-threaded" logic in V8 DOMData, DOMDataStore and friends
2326 This functionality is untested and unused:
2327 This is an old code from Lockers-based implementation of WebWorkers in
2328 V8 bindings, to make sure that DOM objects are released on the right thread
2329 even though GC could have happened on any thread. It is currently unused (since
2330 current model is one worker per process) and is being removed because new implementation
2331 of WebWorkers will be using V8 isolates.
2335 * bindings/v8/ChildThreadDOMData.cpp: Removed.
2336 * bindings/v8/ChildThreadDOMData.h: Removed.
2337 * bindings/v8/DOMData.cpp:
2338 (WebCore::DOMData::DOMData):
2339 (WebCore::DOMData::getCurrent):
2340 (WebCore::DOMData::getMainThreadStore):
2341 * bindings/v8/DOMData.h:
2342 (WebCore::DOMData::getStore):
2343 (WebCore::DOMData::getCurrentMainThreadStore):
2344 (WebCore::DOMData::handleWeakObject):
2345 * bindings/v8/DOMDataStore.cpp:
2346 (WebCore::DOMDataStore::DOMDataStore):
2347 (WebCore::DOMDataStore::~DOMDataStore):
2348 (WebCore::DOMDataStore::weakNodeCallback):
2349 * bindings/v8/DOMDataStore.h:
2350 * bindings/v8/MainThreadDOMData.cpp: Removed.
2351 * bindings/v8/MainThreadDOMData.h: Removed.
2352 * bindings/v8/V8DOMMap.cpp:
2353 (WebCore::getDOMDataStore):
2354 (WebCore::removeAllDOMObjects):
2355 (WebCore::visitDOMNodes):
2356 (WebCore::visitDOMObjects):
2357 (WebCore::visitActiveDOMObjects):
2358 (WebCore::visitDOMSVGElementInstances):
2359 * bindings/v8/V8DOMMap.h:
2360 * bindings/v8/V8GCController.cpp:
2361 (WebCore::V8GCController::gcPrologue):
2362 (WebCore::V8GCController::gcEpilogue):
2363 * bindings/v8/WorkerScriptController.cpp:
2364 (WebCore::WorkerScriptController::~WorkerScriptController):
2366 2011-06-08 Yael Aharon <yael.aharon@nokia.com>
2368 Reviewed by Andreas Kling.
2370 [Qt] Build fix for building QtWebKit inside of Qt.
2371 https://bugs.webkit.org/show_bug.cgi?id=62280
2373 Remove CONFIG=staticlib, because it causes the configure script to add -lwebcore
2376 No new tests, as this is just a build fix.
2380 2011-06-08 Vsevolod Vlasov <vsevik@chromium.org>
2382 Reviewed by Pavel Feldman.
2384 Web Inspector: Render non-document HTML resources as HTML
2385 https://bugs.webkit.org/show_bug.cgi?id=58886
2387 * English.lproj/localizedStrings.js:
2389 * WebCore.vcproj/WebCore.vcproj:
2390 * inspector/front-end/NetworkItemView.js:
2391 (WebInspector.NetworkItemView):
2392 * inspector/front-end/Resource.js:
2393 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
2394 (WebInspector.Resource.prototype.hasErrorStatusCode):
2395 * inspector/front-end/ResourceHTMLView.js: Added.
2396 (WebInspector.ResourceHTMLView):
2397 (WebInspector.ResourceHTMLView.prototype.hasContent):
2398 (WebInspector.ResourceHTMLView.prototype.show):
2399 (WebInspector.ResourceHTMLView.prototype.hide):
2400 (WebInspector.ResourceHTMLView.prototype._createIFrame):
2401 * inspector/front-end/ResourcePreviewView.js: Added.
2402 (WebInspector.ResourcePreviewView):
2403 (WebInspector.ResourcePreviewView.prototype.hasContent):
2404 (WebInspector.ResourcePreviewView.prototype.show):
2405 (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown.callback):
2406 (WebInspector.ResourcePreviewView.prototype._ensureInnerViewShown):
2407 (WebInspector.ResourcePreviewView.prototype._createInnerView):
2408 * inspector/front-end/Settings.js:
2409 (WebInspector.Settings):
2410 * inspector/front-end/WebKit.qrc:
2411 * inspector/front-end/inspector.css:
2412 (.resource-view.html iframe):
2413 * inspector/front-end/inspector.html:
2415 2011-05-18 Pavel Podivilov <podivilov@chromium.org>
2417 Reviewed by Yury Semikhatsky.
2419 Web Inspector: hide script location to ui location conversion details from ScriptsPanel.
2420 https://bugs.webkit.org/show_bug.cgi?id=61035
2422 * inspector/front-end/DebuggerPresentationModel.js:
2423 (WebInspector.DebuggerPresentationModel.prototype.sourceFileForScriptURL):
2424 (WebInspector.DebuggerPresentationModel.prototype.scriptLocationToUILocation.didRequestSourceMapping):
2425 (WebInspector.DebuggerPresentationModel.prototype.scriptLocationToUILocation):
2426 * inspector/front-end/ScriptsPanel.js:
2427 (WebInspector.ScriptsPanel.prototype.showAnchorLocation.didGetUILocation):
2428 (WebInspector.ScriptsPanel.prototype.showAnchorLocation):
2430 2011-06-08 Tommy Widenflycht <tommyw@google.com>
2432 Reviewed by Tony Gentilcore.
2436 Media Stream PeerConnection API: adding StreamEvent class
2437 https://bugs.webkit.org/show_bug.cgi?id=61537
2439 Tests for the Media Stream API will be provided by the bug 56587.
2442 * CodeGenerators.pri:
2443 * DerivedSources.cpp:
2444 * DerivedSources.make:
2445 * GNUmakefile.list.am:
2448 * WebCore.vcproj/WebCore.vcproj:
2449 * WebCore.xcodeproj/project.pbxproj:
2450 * bindings/js/JSEventCustom.cpp:
2452 * bindings/v8/custom/V8EventCustom.cpp:
2454 * dom/DOMAllInOne.cpp:
2456 (WebCore::Event::isStreamEvent):
2458 * dom/StreamEvent.cpp: Added.
2459 (WebCore::StreamEvent::create):
2460 (WebCore::StreamEvent::StreamEvent):
2461 (WebCore::StreamEvent::~StreamEvent):
2462 (WebCore::StreamEvent::initStreamEvent):
2463 (WebCore::StreamEvent::stream):
2464 * dom/StreamEvent.h: Added.
2465 (WebCore::StreamEvent::isStreamEvent):
2466 * dom/StreamEvent.idl: Added.
2468 2011-06-08 Tommy Widenflycht <tommyw@google.com>
2470 Reviewed by Tony Gentilcore.
2472 Media Stream API: integrate the Track List objects into the existing code.
2473 https://bugs.webkit.org/show_bug.cgi?id=60205
2475 Tests for the Media Stream API will be provided by the bug 56587.
2477 * dom/ExclusiveTrackList.cpp:
2478 (WebCore::ExclusiveTrackList::select):
2479 (WebCore::ExclusiveTrackList::trackFailed):
2480 * dom/ExclusiveTrackList.h:
2481 * dom/GeneratedStream.cpp:
2482 (WebCore::GeneratedStream::create):
2483 (WebCore::GeneratedStream::GeneratedStream):
2484 (WebCore::GeneratedStream::streamEnded):
2485 (WebCore::GeneratedStream::audioTracks):
2486 (WebCore::GeneratedStream::videoTracks):
2487 (WebCore::GeneratedStream::stop):
2488 * dom/GeneratedStream.h:
2489 * dom/GeneratedStream.idl:
2490 * dom/MultipleTrackList.cpp:
2491 (WebCore::MultipleTrackList::trackFailed):
2492 (WebCore::MultipleTrackList::enable):
2493 (WebCore::MultipleTrackList::disable):
2494 * dom/MultipleTrackList.h:
2496 * dom/TrackList.cpp:
2497 (WebCore::TrackList::clear):
2498 (WebCore::TrackList::associateStream):
2499 (WebCore::TrackList::associatedStreamLabel):
2500 (WebCore::TrackList::trackFailed):
2501 (WebCore::TrackList::scriptExecutionContext):
2503 * page/MediaStreamClient.h:
2504 * page/MediaStreamController.cpp:
2505 (WebCore::MediaStreamController::enableAudioTrack):
2506 (WebCore::MediaStreamController::disableAudioTrack):
2507 (WebCore::MediaStreamController::selectVideoTrack):
2508 (WebCore::MediaStreamController::streamGenerated):
2509 (WebCore::MediaStreamController::audioTrackFailed):
2510 (WebCore::MediaStreamController::videoTrackFailed):
2511 * page/MediaStreamController.h:
2512 * page/MediaStreamFrameController.cpp:
2513 (WebCore::MediaStreamFrameController::unregister):
2514 (WebCore::MediaStreamFrameController::enterDetachedState):
2515 (WebCore::MediaStreamFrameController::disconnectFrame):
2516 (WebCore::MediaStreamFrameController::enableAudioTrack):
2517 (WebCore::MediaStreamFrameController::disableAudioTrack):
2518 (WebCore::MediaStreamFrameController::selectVideoTrack):
2519 (WebCore::MediaStreamFrameController::streamGenerated):
2520 (WebCore::MediaStreamFrameController::audioTrackFailed):
2521 (WebCore::MediaStreamFrameController::videoTrackFailed):
2522 * page/MediaStreamFrameController.h:
2523 (WebCore::MediaStreamFrameController::ClientBase::isGenericClient):
2524 (WebCore::MediaStreamFrameController::GenericClient::GenericClient):
2525 (WebCore::MediaStreamFrameController::GenericClient::~GenericClient):
2526 (WebCore::MediaStreamFrameController::GenericClient::isGenericClient):
2527 (WebCore::MediaStreamFrameController::GenericClient::unregister):
2529 2011-06-08 Pavel Podivilov <podivilov@chromium.org>
2531 Reviewed by Yury Semikhatsky.
2533 Web Inspector: [REGRESSION] breakpoints are not persisted.
2534 https://bugs.webkit.org/show_bug.cgi?id=62273
2536 * inspector/front-end/Settings.js:
2538 2011-06-08 Alexander Pavlov <apavlov@chromium.org>
2540 Reviewed by Yury Semikhatsky.
2542 Web Inspector: node selection is slow in the Elements panel.
2543 https://bugs.webkit.org/show_bug.cgi?id=60813
2545 Schedule full style updates rather than request all node styles from the backend immediately.
2547 * inspector/front-end/StylesSidebarPane.js:
2548 (WebInspector.StylesSidebarPane.prototype.update.reloadAllStyles):
2549 (WebInspector.StylesSidebarPane.prototype.update):
2551 2011-06-08 Andreas Kling <andreas.kling@nokia.com>
2553 Reviewed by Laszlo Gombos.
2555 [Symbian] Float{32,64}Array and Int16Array fail to build.
2556 https://bugs.webkit.org/show_bug.cgi?id=62219
2558 For some reason, RVCT 2.x is moaning about "class member designated by
2559 a using-declaration must be visible in a direct base class".
2560 Apply same fix as r69122 and r76592.
2562 * html/canvas/Float32Array.h:
2563 (WebCore::Float32Array::set):
2564 * html/canvas/Float64Array.h:
2565 (WebCore::Float64Array::set):
2566 * html/canvas/Int16Array.h:
2567 (WebCore::Int16Array::set):
2569 2011-06-08 Syed Idris Shah <syed.idris-shah@nokia.com>
2571 Reviewed by Andreas Kling.
2573 [Qt] GL_POINT_SPRITE and GL_VERTEX_PROGRAM_POINT_SIZE should be enabled for desktop WebGL
2574 https://bugs.webkit.org/show_bug.cgi?id=61945
2576 For OpenGL ES we do not need these features.
2577 These features are available via shaders in OpenGL ES. But for desktop WebGL using QtWebKit they should be enabled.
2579 LayoutTests/fast/canvas/webgl/point-size.html
2581 * platform/graphics/qt/GraphicsContext3DQt.cpp:
2582 (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal):
2584 2011-06-08 Gyuyoung Kim <gyuyoung.kim@samsung.com>
2586 Unreviewed. Fix style error.
2588 * platform/efl/RenderThemeEfl.cpp:
2589 * platform/efl/RenderThemeEfl.h:
2591 2011-06-08 Hironori Bono <hbono@chromium.org>
2593 Reviewed by Brent Fulgham.
2596 https://bugs.webkit.org/show_bug.cgi?id=59693
2598 This change adds two SpellCheck API functions (addSpellcheckRange and
2599 removeSpellcheckRange) and one attribute (spellcheckRange) discussed in
2600 the public-webapps ML. This change is currently available only on Chromium.
2602 Tests: editing/spelling/spellcheck-api-pixel.html
2603 editing/spelling/spellcheck-api.html
2606 * bindings/generic/RuntimeEnabledFeatures.cpp:
2607 * bindings/generic/RuntimeEnabledFeatures.h:
2608 (WebCore::RuntimeEnabledFeatures::spellCheckAPIEnabled):
2609 (WebCore::RuntimeEnabledFeatures::setSpellCheckAPIEnabled):
2610 * dom/DocumentMarker.h:
2611 (WebCore::DocumentMarker::length):
2612 * dom/DocumentMarkerController.cpp:
2613 (WebCore::DocumentMarkerController::userSpellingMarkersForNode):
2614 (WebCore::DocumentMarkerController::addUserSpellingMarker):
2615 (WebCore::DocumentMarkerController::removeUserSpellingMarker):
2616 (WebCore::DocumentMarkerController::userSpellingNode):
2617 * dom/DocumentMarkerController.h:
2618 * html/HTMLDivElement.cpp:
2619 (WebCore::HTMLDivElement::spellcheckRanges):
2620 (WebCore::HTMLDivElement::addSpellcheckRange):
2621 (WebCore::HTMLDivElement::removeSpellcheckRange):
2622 * html/HTMLDivElement.h:
2623 * html/HTMLDivElement.idl:
2624 * html/HTMLInputElement.cpp:
2625 (WebCore::HTMLInputElement::spellcheckRanges):
2626 (WebCore::HTMLInputElement::addSpellcheckRange):
2627 (WebCore::HTMLInputElement::removeSpellcheckRange):
2628 * html/HTMLInputElement.h:
2629 * html/HTMLInputElement.idl:
2630 * html/HTMLTextAreaElement.cpp:
2631 (WebCore::HTMLTextAreaElement::spellcheckRanges):
2632 (WebCore::HTMLTextAreaElement::addSpellcheckRange):
2633 (WebCore::HTMLTextAreaElement::removeSpellcheckRange):
2634 * html/HTMLTextAreaElement.h:
2635 * html/HTMLTextAreaElement.idl:
2636 * html/SpellcheckRange.cpp: Added.
2637 (WebCore::SpellcheckRange::SpellcheckRange):
2638 (WebCore::SpellcheckRange::~SpellcheckRange):
2639 * html/SpellcheckRange.h: Added.
2640 (WebCore::SpellcheckRange::create):
2641 (WebCore::SpellcheckRange::start):
2642 (WebCore::SpellcheckRange::length):
2643 (WebCore::SpellcheckRange::suggestions):
2644 (WebCore::SpellcheckRange::options):
2645 * html/SpellcheckRange.idl: Added.
2646 * html/SpellcheckRangeList.cpp: Added.
2647 (WebCore::SpellcheckRangeList::SpellcheckRangeList):
2648 (WebCore::SpellcheckRangeList::~SpellcheckRangeList):
2649 (WebCore::SpellcheckRangeList::item):
2650 * html/SpellcheckRangeList.h: Added.
2651 (WebCore::SpellcheckRangeList::create):
2652 (WebCore::SpellcheckRangeList::isEmpty):
2653 (WebCore::SpellcheckRangeList::clear):
2654 (WebCore::SpellcheckRangeList::append):
2655 (WebCore::SpellcheckRangeList::remove):
2656 (WebCore::SpellcheckRangeList::length):
2657 * html/SpellcheckRangeList.idl: Added.
2658 * rendering/InlineTextBox.cpp:
2659 (WebCore::textCheckingLineStyleForMarkerType):
2660 (WebCore::InlineTextBox::paintDocumentMarkers):
2662 2011-06-07 Andrey Kosyakov <caseq@chromium.org>
2664 Reviewed by Pavel Feldman.
2666 Web Inspector: remove shadow dom inspection from Elements panel by default.
2667 https://bugs.webkit.org/show_bug.cgi?id=62188
2672 (WebCore::Element::ensureShadowRoot):
2673 (WebCore::Element::removeShadowRoot):
2674 * inspector/Inspector.json:
2675 * inspector/InspectorDOMAgent.cpp:
2676 (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
2677 (WebCore::InspectorDOMAgent::buildObjectForNode):
2678 (WebCore::InspectorDOMAgent::didInsertDOMNode):
2679 (WebCore::InspectorDOMAgent::didRemoveDOMNode):
2680 * inspector/InspectorDOMAgent.h:
2681 * inspector/front-end/DOMAgent.js:
2682 (WebInspector.DOMNode):
2683 (WebInspector.DOMNode.prototype._renumber):
2684 (WebInspector.DOMAgent.prototype._bindNodes):
2685 (WebInspector.DOMAgent.prototype.querySelectorAll):
2686 (WebInspector.DOMDispatcher.prototype.searchResults):
2687 * inspector/front-end/ElementsPanel.js:
2688 (WebInspector.ElementsPanel):
2689 (WebInspector.ElementsPanel.prototype._attributesUpdated):
2690 (WebInspector.ElementsPanel.prototype._characterDataModified):
2691 (WebInspector.ElementsPanel.prototype._nodeInserted):
2692 (WebInspector.ElementsPanel.prototype._nodeRemoved):
2693 (WebInspector.ElementsPanel.prototype.updateModifiedNodes):
2694 (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
2695 * inspector/front-end/ElementsTreeOutline.js:
2696 (WebInspector.ElementsTreeElement):
2697 (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode):
2698 (WebInspector.ElementsTreeElement.prototype._updateChildren):
2700 * inspector/front-end/inspector.css:
2701 * inspector/front-end/utilities.js:
2702 (Element.prototype.query):
2704 2011-06-08 Mark Rowe <mrowe@apple.com>
2708 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2709 (WebCore::MediaPlayerPrivateAVFoundation::timeChanged):
2710 (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
2712 2011-06-07 Keishi Hattori <keishi@webkit.org>
2714 Reviewed by Kent Tamura.
2716 Rename HTMLInputElement::m_value to m_valueIfDirty
2717 https://bugs.webkit.org/show_bug.cgi?id=61990
2719 No new tests because no behavior change.
2721 * html/HTMLInputElement.cpp: Replaced m_value with m_valueIfDirty.
2722 (WebCore::HTMLInputElement::tooLong):
2723 (WebCore::HTMLInputElement::updateType):
2724 (WebCore::HTMLInputElement::parseMappedAttribute):
2725 (WebCore::HTMLInputElement::copyNonAttributeProperties):
2726 (WebCore::HTMLInputElement::value):
2727 (WebCore::HTMLInputElement::setValue):
2728 (WebCore::HTMLInputElement::setValueFromRenderer):
2729 (WebCore::HTMLInputElement::updateValueIfNeeded):
2730 * html/HTMLInputElement.h: Renamed m_value to m_valueIfDirty.
2731 (WebCore::HTMLInputElement::hasDirtyValue): Added. Returns the dirty value flag.
2733 2011-06-07 Ian Henderson <ianh@apple.com>
2735 Reviewed by Dan Bernstein.
2737 (CG) Sub-image drawing clips unnecessarily
2738 https://bugs.webkit.org/show_bug.cgi?id=62258
2740 If destRect completely encompasses the adjustedDestRect into which we
2741 draw, clipping to destRect will do nothing. Skip the call to
2742 CGContextClipToRect in this case.
2744 * platform/graphics/cg/ImageCG.cpp:
2745 (WebCore::BitmapImage::draw):
2747 2011-06-07 Emil A Eklund <eae@chromium.org>
2749 Reviewed by Eric Seidel.
2751 Convert nodeAtPoint to IntPoint
2752 https://bugs.webkit.org/show_bug.cgi?id=62145
2754 Convert nodeAtPoint to take an IntPoint instead of a pair of ints for the
2757 Covered by existing tests.
2759 * platform/graphics/FloatPoint.h:
2760 (WebCore::FloatPoint::moveBy):
2761 Add moveBy(IntPoint) method
2763 * rendering/EllipsisBox.cpp:
2764 (WebCore::EllipsisBox::nodeAtPoint):
2765 * rendering/EllipsisBox.h:
2766 * rendering/InlineBox.cpp:
2767 (WebCore::InlineBox::nodeAtPoint):
2768 * rendering/InlineBox.h:
2769 * rendering/InlineFlowBox.cpp:
2770 (WebCore::InlineFlowBox::nodeAtPoint):
2771 * rendering/InlineFlowBox.h:
2772 * rendering/InlineTextBox.cpp:
2773 (WebCore::InlineTextBox::nodeAtPoint):
2774 * rendering/InlineTextBox.h:
2775 * rendering/RenderBlock.cpp:
2776 (WebCore::RenderBlock::nodeAtPoint):
2777 (WebCore::RenderBlock::hitTestContents):
2778 * rendering/RenderBlock.h:
2779 * rendering/RenderBox.cpp:
2780 (WebCore::RenderBox::nodeAtPoint):
2781 * rendering/RenderBox.h:
2782 * rendering/RenderFrameSet.cpp:
2783 (WebCore::RenderFrameSet::nodeAtPoint):
2784 * rendering/RenderFrameSet.h:
2785 * rendering/RenderImage.cpp:
2786 (WebCore::RenderImage::nodeAtPoint):
2787 * rendering/RenderImage.h:
2788 * rendering/RenderInline.cpp:
2789 (WebCore::RenderInline::nodeAtPoint):
2790 * rendering/RenderInline.h:
2791 * rendering/RenderLineBoxList.cpp:
2792 (WebCore::RenderLineBoxList::hitTest):
2793 * rendering/RenderListBox.cpp:
2794 (WebCore::RenderListBox::nodeAtPoint):
2795 * rendering/RenderListBox.h:
2796 * rendering/RenderObject.cpp:
2797 (WebCore::RenderObject::hitTest):
2798 * rendering/RenderObject.h:
2799 * rendering/RenderTable.cpp:
2800 (WebCore::RenderTable::nodeAtPoint):
2801 * rendering/RenderTable.h:
2802 * rendering/RenderTableRow.cpp:
2803 (WebCore::RenderTableRow::nodeAtPoint):
2804 * rendering/RenderTableRow.h:
2805 * rendering/RenderTableSection.cpp:
2806 (WebCore::RenderTableSection::nodeAtPoint):
2807 * rendering/RenderTableSection.h:
2808 * rendering/RenderText.h:
2809 (WebCore::RenderText::nodeAtPoint):
2810 * rendering/RenderTextControlMultiLine.cpp:
2811 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
2812 * rendering/RenderTextControlMultiLine.h:
2813 * rendering/RenderTextControlSingleLine.cpp:
2814 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
2815 * rendering/RenderTextControlSingleLine.h:
2816 * rendering/RenderWidget.cpp:
2817 (WebCore::RenderWidget::nodeAtPoint):
2818 * rendering/RenderWidget.h:
2819 * rendering/RootInlineBox.cpp:
2820 (WebCore::RootInlineBox::nodeAtPoint):
2821 * rendering/RootInlineBox.h:
2822 * rendering/svg/RenderSVGForeignObject.cpp:
2823 (WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
2824 (WebCore::RenderSVGForeignObject::nodeAtPoint):
2825 * rendering/svg/RenderSVGForeignObject.h:
2826 * rendering/svg/RenderSVGModelObject.cpp:
2827 (WebCore::RenderSVGModelObject::nodeAtPoint):
2828 * rendering/svg/RenderSVGModelObject.h:
2829 * rendering/svg/RenderSVGRoot.cpp:
2830 (WebCore::RenderSVGRoot::nodeAtPoint):
2831 * rendering/svg/RenderSVGRoot.h:
2832 * rendering/svg/RenderSVGText.cpp:
2833 (WebCore::RenderSVGText::nodeAtFloatPoint):
2834 (WebCore::RenderSVGText::nodeAtPoint):
2835 * rendering/svg/RenderSVGText.h:
2837 2011-06-07 Yi Shen <yi.4.shen@nokia.com>
2839 Reviewed by Simon Hausmann.
2841 [Qt] Fix the error code for media resource failures when using QtMobility
2842 https://bugs.webkit.org/show_bug.cgi?id=55901
2844 To indicate the media resource failures, set the network state to
2845 MediaPlayer::FormatError when receives QMediaPlayer::InvalidMedia or
2846 QMediaPlayer::ResourceError.
2848 * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2849 (WebCore::MediaPlayerPrivateQt::updateStates):
2851 2011-06-07 Emil A Eklund <eae@chromium.org>
2853 Reviewed by Eric Seidel.
2855 Change RenderBlock::hitTestFloats to IntPoint
2856 https://bugs.webkit.org/show_bug.cgi?id=62176
2858 Covered by existing tests.
2860 * rendering/RenderBlock.cpp:
2861 (WebCore::RenderBlock::nodeAtPoint):
2862 (WebCore::RenderBlock::hitTestFloats):
2863 (WebCore::RenderBlock::hitTestColumns):
2864 * rendering/RenderBlock.h:
2866 2011-06-07 Tim Horton <timothy_horton@apple.com>
2868 Reviewed by Alexey Proskuryakov.
2870 Use correct CFURLStorageSessionRef definition on Snow Leopard
2871 https://bugs.webkit.org/show_bug.cgi?id=62223
2873 * platform/mac/WebCoreSystemInterface.h:
2874 * platform/network/ResourceHandle.h:
2875 * platform/network/cf/ResourceRequest.h:
2877 2011-06-07 Emil A Eklund <eae@chromium.org>
2879 Reviewed by Eric Seidel.
2881 Change RenderBlock::hitTestColumns to IntPoint
2882 https://bugs.webkit.org/show_bug.cgi?id=62172
2884 Covered by existing tests.
2886 * rendering/RenderBlock.cpp:
2887 (WebCore::RenderBlock::nodeAtPoint):
2888 (WebCore::RenderBlock::hitTestColumns):
2889 * rendering/RenderBlock.h:
2891 2011-06-07 Simon Fraser <simon.fraser@apple.com>
2893 Reviewed by Darin Adler.
2895 Opacity transition doesn't work while content property is set.
2896 https://bugs.webkit.org/show_bug.cgi?id=59301
2898 StyleRareNonInheritedData's copy constructor omitted to copy
2899 the m_content data, which caused us to detach and re-attach the renderer
2900 at the start of the transition, thereby killing the transition.
2902 Fix by making StyleRareNonInheritedData's copy ctor do the right thing.
2904 Test: transitions/transition-on-element-with-content.html
2906 * rendering/style/ContentData.h:
2907 * rendering/style/ContentData.cpp:
2908 (WebCore::ContentData::clone): New method to do a deep clone. (Can't use a copy
2909 ctor because of the subclasses.)
2910 * rendering/style/CounterDirectives.h: Pack the data members to save space.
2911 Add a clone() function for the HashMap.
2912 * rendering/style/CounterDirectives.cpp:
2913 (WebCore::clone): Make a new HashMap and copy the contents over.
2914 * rendering/style/StyleRareNonInheritedData.cpp:
2915 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): Copy
2916 the content and counter directives over.
2917 (WebCore::StyleRareNonInheritedData::operator==): Rather than just comparing
2918 for pointer equality, do a correct check for m_counterDirectives equality.
2919 (WebCore::StyleRareNonInheritedData::counterDataEquivalent):
2920 * rendering/style/StyleRareNonInheritedData.h:
2922 2011-06-07 Robert Kroeger <rjkroege@chromium.org>
2924 Reviewed by Adam Barth.
2926 [chromium] Add a basic gesture recognizer to the Chromium platform
2927 https://bugs.webkit.org/show_bug.cgi?id=54417
2929 Adds a basic gesture recognizer to the Chromium platform. Adds an entry
2930 point to the GestureRecognizer to reset any internal state on a page reset.
2931 Resetting the gesture recognizer on page load is necesary for reliable
2932 layout test execution and improves gesture recognizer operational
2935 Added an additional constructor to permit building a synthetic
2938 Small modifications to the PlatformGestureRecognizer as required to
2939 implement the simple Chromium platform gesture recognizer.
2941 Tests: fast/events/touch/touch-gesture-click.html
2944 * page/EventHandler.cpp:
2945 (WebCore::EventHandler::resetGestureRecognizer):
2946 * page/EventHandler.h:
2947 * page/FrameView.cpp:
2948 (WebCore::FrameView::reset):
2949 * platform/PlatformGestureRecognizer.h:
2950 * platform/PlatformWheelEvent.h:
2951 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2952 * platform/chromium/GestureRecognizerChromium.cpp: Added.
2953 (WebCore::InnerGestureRecognizer::InnerGestureRecognizer):
2954 (WebCore::InnerGestureRecognizer::reset):
2955 (WebCore::InnerGestureRecognizer::~InnerGestureRecognizer):
2956 (WebCore::InnerGestureRecognizer::addEdgeFunction):
2957 (WebCore::InnerGestureRecognizer::isInClickTimeWindow):
2958 (WebCore::InnerGestureRecognizer::isInsideManhattanSquare):
2959 (WebCore::InnerGestureRecognizer::dispatchSyntheticClick):
2960 (WebCore::InnerGestureRecognizer::processTouchEventForGesture):
2961 (WebCore::InnerGestureRecognizer::scrollViaTouchMotion):
2962 (WebCore::InnerGestureRecognizer::updateValues):
2963 (WebCore::InnerGestureRecognizer::signature):
2964 (WebCore::touchDown):
2965 (WebCore::noGesture):
2967 (WebCore::isClickOrScroll):
2968 (WebCore::inScroll):
2969 (WebCore::PlatformGestureRecognizer::create):
2970 (WebCore::PlatformGestureRecognizer::PlatformGestureRecognizer):
2971 (WebCore::PlatformGestureRecognizer::~PlatformGestureRecognizer):
2972 (WebCore::GestureRecognizerChromium::GestureRecognizerChromium):
2973 (WebCore::GestureRecognizerChromium::~GestureRecognizerChromium):
2974 * platform/chromium/GestureRecognizerChromium.h: Added.
2975 (WebCore::InnerGestureRecognizer::setState):
2976 (WebCore::InnerGestureRecognizer::state):
2977 (WebCore::GestureRecognizerChromium::reset):
2978 (WebCore::GestureRecognizerChromium::processTouchEventForGesture):
2980 2011-06-07 No'am Rosenthal <noam.rosenthal@nokia.com>
2982 Reviewed by Andreas Kling.
2984 [Texmap][Qt] Enable TextureMapper by default
2985 https://bugs.webkit.org/show_bug.cgi?id=61740
2987 Enable TextureMapper on Windows+Symbian, disabling the direct OpenGL path. This would mean that
2988 for now QtWebKit on Windows/Symbian would use the Qt backend for TextureMapper.
2990 No new functionality so no new tests.
2994 * platform/graphics/qt/GraphicsContext3DQt.cpp:
2995 * platform/graphics/qt/TextureMapperQt.cpp:
2996 (WebCore::TextureMapper::create):
2998 2011-06-07 Emil A Eklund <eae@chromium.org>
3000 Reviewed by Eric Seidel.
3002 Convert RenderBox::absoluteRects to IntPoint
3003 https://bugs.webkit.org/show_bug.cgi?id=62130
3005 Covered by existing tests.
3008 (WebCore::Node::hasNonEmptyBoundingBox):
3009 * rendering/InlineBox.h:
3010 (WebCore::InlineBox::size):
3011 * rendering/RenderBlock.cpp:
3012 (WebCore::RenderBlock::absoluteRects):
3013 * rendering/RenderBlock.h:
3014 * rendering/RenderBox.cpp:
3015 (WebCore::RenderBox::absoluteRects):
3016 * rendering/RenderBox.h:
3017 * rendering/RenderInline.cpp:
3018 (WebCore::RenderInline::absoluteRects):
3019 * rendering/RenderInline.h:
3020 * rendering/RenderObject.cpp:
3021 (WebCore::RenderObject::absoluteBoundingBoxRect):
3022 * rendering/RenderObject.h:
3023 (WebCore::RenderObject::absoluteRects):
3024 * rendering/RenderText.cpp:
3025 (WebCore::RenderText::absoluteRects):
3026 * rendering/RenderText.h:
3027 * rendering/RenderView.cpp:
3028 (WebCore::RenderView::absoluteRects):
3029 * rendering/RenderView.h:
3030 * rendering/svg/RenderSVGBlock.cpp:
3031 (WebCore::RenderSVGBlock::absoluteRects):
3032 * rendering/svg/RenderSVGBlock.h:
3033 * rendering/svg/RenderSVGModelObject.cpp:
3034 (WebCore::RenderSVGModelObject::absoluteRects):
3035 * rendering/svg/RenderSVGModelObject.h:
3037 2011-06-07 Kent Tamura <tkent@chromium.org>
3039 Reviewed by Andreas Kling.
3041 [Qt] RenderThemeQt::adjustSliderThumbSize() should not refer to the parent style.
3042 https://bugs.webkit.org/show_bug.cgi?id=62207
3044 * css/mediaControlsQt.css: Add comments.
3045 (audio::-webkit-media-controls-timeline):
3046 (video::-webkit-media-controls-timeline):
3047 (audio::-webkit-media-controls-volume-slider):
3048 (video::-webkit-media-controls-volume-slider):
3049 * platform/qt/RenderThemeQt.cpp: Use fixed values to avoid referring to o->parent().
3050 (WebCore::RenderThemeQt::adjustSliderThumbSize):
3052 2011-06-07 Sailesh Agrawal <sail@chromium.org>
3054 Reviewed by Mihai Parparita.
3056 Chromium Mac: Fork ScrollAnimatorMac to ScrollAnimatorChromiumMac for overlay scrollbar support
3057 https://bugs.webkit.org/show_bug.cgi?id=59753
3059 No new tests. Just forking ScrollAnimatorMac to ScrollAnimatorChromiumMac.
3061 * WebCore.gyp/WebCore.gyp: Added IntPointMac.mm. This is used by some functions in ScrollAnimatorChromiumMac. Also added filters for conflicting class names in ScrollAnimatorChromiumMac.
3062 * WebCore.gypi: Added ScrollAnimatorChromiumMac.h/mm.
3063 * platform/ScrollAnimator.cpp: Extended the #ifdef around ScrollAnimator::create() so that the chromium version will be created.
3064 * platform/chromium/ScrollAnimatorChromiumMac.h: Added.
3065 (WebCore::ScrollAnimatorChromiumMac::setIsDrawingIntoLayer):
3066 (WebCore::ScrollAnimatorChromiumMac::isDrawingIntoLayer):
3067 (WebCore::ScrollAnimatorChromiumMac::haveScrolledSincePageLoad):
3068 * platform/chromium/ScrollAnimatorChromiumMac.mm: Added. Forked from ScrollAnimatorMac and replaced all instances of ScrollAnimatorMac with ScrollAnimatorChromiumMac and ScrollbarThemeMac with ScrollbarThemeChromiumMac. Removed the ENABLE(SMOOTH_SCROLLING) around the file. Stubbed out ScrollAnimatorChromiumMac::scroll() if smooth scrolling is disabled.
3070 (-[ScrollAnimationHelperDelegate initWithScrollAnimator:WebCore::]):
3071 (-[ScrollAnimationHelperDelegate scrollAnimatorDestroyed]):
3072 (-[ScrollAnimationHelperDelegate bounds]):
3073 (-[ScrollAnimationHelperDelegate _immediateScrollToPoint:]):
3074 (-[ScrollAnimationHelperDelegate _pixelAlignProposedScrollPosition:]):
3075 (-[ScrollAnimationHelperDelegate convertSizeToBase:]):
3076 (-[ScrollAnimationHelperDelegate convertSizeFromBase:]):
3077 (-[ScrollAnimationHelperDelegate convertSizeToBacking:]):
3078 (-[ScrollAnimationHelperDelegate convertSizeFromBacking:]):
3079 (-[ScrollAnimationHelperDelegate superview]):
3080 (-[ScrollAnimationHelperDelegate documentView]):
3081 (-[ScrollAnimationHelperDelegate window]):
3082 (-[ScrollAnimationHelperDelegate _recursiveRecomputeToolTips]):
3083 (-[ScrollbarPainterControllerDelegate initWithScrollAnimator:WebCore::]):
3084 (-[ScrollbarPainterControllerDelegate scrollAnimatorDestroyed]):
3085 (-[ScrollbarPainterControllerDelegate contentAreaRectForScrollerImpPair:]):
3086 (-[ScrollbarPainterControllerDelegate inLiveResizeForScrollerImpPair:]):
3087 (-[ScrollbarPainterControllerDelegate mouseLocationInContentAreaForScrollerImpPair:]):
3088 (-[ScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
3089 (-[ScrollbarPainterControllerDelegate scrollerImpPair:setContentAreaNeedsDisplayInRect:]):
3090 (-[ScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
3091 (-[ScrollbarPartAnimation initWithScrollbarPainter:part:WebCore::scrollAnimator:WebCore::animateAlphaTo:duration:]):
3092 (-[ScrollbarPartAnimation setCurrentProgress:]):
3093 (-[ScrollbarPartAnimation scrollAnimatorDestroyed]):
3094 (-[ScrollbarPainterDelegate initWithScrollAnimator:WebCore::]):
3095 (-[ScrollbarPainterDelegate cancelAnimations]):
3096 (-[ScrollbarPainterDelegate convertRectToBacking:]):
3097 (-[ScrollbarPainterDelegate convertRectFromBacking:]):
3098 (-[ScrollbarPainterDelegate layer]):
3099 (-[ScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
3100 (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
3101 (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
3102 (-[ScrollbarPainterDelegate scrollerImp:overlayScrollerStateChangedTo:]):
3103 (-[ScrollbarPainterDelegate scrollAnimatorDestroyed]):
3104 (WebCore::ScrollAnimator::create):
3105 (WebCore::ScrollAnimatorChromiumMac::ScrollAnimatorChromiumMac):
3106 (WebCore::ScrollAnimatorChromiumMac::~ScrollAnimatorChromiumMac):
3107 (WebCore::ScrollAnimatorChromiumMac::scroll):
3108 (WebCore::ScrollAnimatorChromiumMac::scrollToOffsetWithoutAnimation):
3109 (WebCore::ScrollAnimatorChromiumMac::adjustScrollXPositionIfNecessary):
3110 (WebCore::ScrollAnimatorChromiumMac::adjustScrollYPositionIfNecessary):
3111 (WebCore::ScrollAnimatorChromiumMac::adjustScrollPositionIfNecessary):
3112 (WebCore::ScrollAnimatorChromiumMac::immediateScrollToPoint):
3113 (WebCore::ScrollAnimatorChromiumMac::immediateScrollByDeltaX):
3114 (WebCore::ScrollAnimatorChromiumMac::immediateScrollByDeltaY):
3115 (WebCore::ScrollAnimatorChromiumMac::notityPositionChanged):
3116 (WebCore::ScrollAnimatorChromiumMac::contentAreaWillPaint):
3117 (WebCore::ScrollAnimatorChromiumMac::mouseEnteredContentArea):
3118 (WebCore::ScrollAnimatorChromiumMac::mouseExitedContentArea):
3119 (WebCore::ScrollAnimatorChromiumMac::mouseMovedInContentArea):
3120 (WebCore::ScrollAnimatorChromiumMac::willStartLiveResize):
3121 (WebCore::ScrollAnimatorChromiumMac::contentsResized):
3122 (WebCore::ScrollAnimatorChromiumMac::willEndLiveResize):
3123 (WebCore::ScrollAnimatorChromiumMac::contentAreaDidShow):
3124 (WebCore::ScrollAnimatorChromiumMac::contentAreaDidHide):
3125 (WebCore::ScrollAnimatorChromiumMac::didBeginScrollGesture):
3126 (WebCore::ScrollAnimatorChromiumMac::didEndScrollGesture):
3127 (WebCore::ScrollAnimatorChromiumMac::didAddVerticalScrollbar):
3128 (WebCore::ScrollAnimatorChromiumMac::willRemoveVerticalScrollbar):
3129 (WebCore::ScrollAnimatorChromiumMac::didAddHorizontalScrollbar):
3130 (WebCore::ScrollAnimatorChromiumMac::willRemoveHorizontalScrollbar):
3131 (WebCore::ScrollAnimatorChromiumMac::cancelAnimations):
3132 (WebCore::elasticDeltaForTimeDelta):
3133 (WebCore::elasticDeltaForReboundDelta):
3134 (WebCore::reboundDeltaForElasticDelta):
3135 (WebCore::scrollWheelMultiplier):
3136 (WebCore::ScrollAnimatorChromiumMac::handleWheelEvent):
3137 (WebCore::ScrollAnimatorChromiumMac::handleGestureEvent):
3138 (WebCore::ScrollAnimatorChromiumMac::pinnedInDirection):
3139 (WebCore::ScrollAnimatorChromiumMac::allowsVerticalStretching):
3140 (WebCore::ScrollAnimatorChromiumMac::allowsHorizontalStretching):
3141 (WebCore::ScrollAnimatorChromiumMac::smoothScrollWithEvent):
3142 (WebCore::ScrollAnimatorChromiumMac::beginScrollGesture):
3143 (WebCore::ScrollAnimatorChromiumMac::endScrollGesture):
3144 (WebCore::ScrollAnimatorChromiumMac::snapRubberBand):
3145 (WebCore::roundTowardZero):
3146 (WebCore::roundToDevicePixelTowardZero):
3147 (WebCore::ScrollAnimatorChromiumMac::snapRubberBandTimerFired):
3148 (WebCore::ScrollAnimatorChromiumMac::startScrollbarPaintTimer):
3149 (WebCore::ScrollAnimatorChromiumMac::scrollbarPaintTimerIsActive):
3150 (WebCore::ScrollAnimatorChromiumMac::stopScrollbarPaintTimer):
3151 (WebCore::ScrollAnimatorChromiumMac::initialScrollbarPaintTimerFired):
3152 (WebCore::ScrollAnimatorChromiumMac::setVisibleScrollerThumbRect):
3153 * platform/graphics/IntPoint.h: Exposed NSPoint conversion routines to chromium mac.
3155 2011-06-07 Sam Weinig <sam@webkit.org>
3157 Reviewed by Anders Carlsson.
3159 Remove repeated IPC traffic from SetRenderTreeSize message
3160 https://bugs.webkit.org/show_bug.cgi?id=62244
3162 * WebCore.xcodeproj/project.pbxproj:
3163 Make RenderArena.h private so it can be called from WebKit2.
3165 * loader/FrameLoaderClient.h:
3166 (WebCore::FrameLoaderClient::dispatchDidLayout):
3169 * page/ChromeClient.h:
3170 Remove setRenderTreeSize.
3172 * page/FrameView.cpp:
3173 (WebCore::FrameView::performPostLayoutTasks):
3174 Call dispatchDidLayout for all frames instead of calling setRenderTreeSize
3177 2011-06-07 Emil A Eklund <eae@chromium.org>
3179 Reviewed by Eric Seidel.
3181 Change RenderBlock::hitTestContents to IntPoint
3182 https://bugs.webkit.org/show_bug.cgi?id=62170
3184 Covered by existing tests.
3186 * rendering/RenderBlock.cpp:
3187 (WebCore::RenderBlock::nodeAtPoint):
3188 (WebCore::RenderBlock::hitTestColumns):
3189 (WebCore::RenderBlock::hitTestContents):
3190 * rendering/RenderBlock.h:
3192 2011-06-07 Jer Noble <jer.noble@apple.com>
3194 Reviewed by Eric Carlson.
3196 Video with poster attribute will not display new frames when scrubbing.
3197 https://bugs.webkit.org/show_bug.cgi?id=62036
3199 Remove our "detection" about the end of a scrub now that there is an explicit seek completion
3200 handler available in AVFoundation. Move what we used to do upon detection in timeChanged()
3201 into seekCompleted().
3203 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
3204 (WebCore::MediaPlayerPrivateAVFoundation::timeChanged):
3205 (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
3207 2011-06-07 James Simonsen <simonjam@chromium.org>
3209 Unreviewed, build fix, missing files from r88274.
3211 * bindings/v8/ChildThreadDOMData.cpp: Added.
3212 (WebCore::ChildThreadDOMData::ChildThreadDOMData):
3213 (WebCore::ChildThreadDOMData::getStore):
3214 * bindings/v8/ChildThreadDOMData.h: Added.
3215 * bindings/v8/MainThreadDOMData.cpp: Added.
3216 (WebCore::MainThreadDOMData::MainThreadDOMData):
3217 (WebCore::MainThreadDOMData::getCurrent):
3218 (WebCore::MainThreadDOMData::getMainThreadStore):
3219 (WebCore::MainThreadDOMData::getCurrentMainThreadStore):
3220 * bindings/v8/MainThreadDOMData.h: Added.
3221 (WebCore::MainThreadDOMData::getStore):
3223 2011-06-07 Abhishek Arya <inferno@chromium.org>
3225 Reviewed by Dan Bernstein.
3227 Replicate WidthIterator.cpp fix from r88139.
3228 https://bugs.webkit.org/show_bug.cgi?id=62238
3230 No new tests. Covered by existing layout tests on XP debug bots.
3232 * platform/graphics/win/UniscribeController.cpp:
3233 (WebCore::UniscribeController::advance):
3235 2011-06-07 Sheriff Bot <webkit.review.bot@gmail.com>
3237 Unreviewed, rolling out r88221, r88224, and r88231.
3238 http://trac.webkit.org/changeset/88221
3239 http://trac.webkit.org/changeset/88224
3240 http://trac.webkit.org/changeset/88231
3241 https://bugs.webkit.org/show_bug.cgi?id=62233
3243 assert failure on chromium linux debug (Requested by simonjam
3248 * bindings/v8/ChildThreadDOMData.cpp: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
3249 (WebCore::ChildThreadDOMData::ChildThreadDOMData):
3250 (WebCore::ChildThreadDOMData::getStore):
3251 * bindings/v8/ChildThreadDOMData.h: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
3252 * bindings/v8/DOMData.cpp:
3253 (WebCore::DOMData::DOMData):
3254 (WebCore::DOMData::getCurrent):
3255 * bindings/v8/DOMData.h:
3256 (WebCore::DOMData::owningThread):
3257 (WebCore::DOMData::handleWeakObject):
3258 * bindings/v8/DOMDataStore.cpp:
3259 (WebCore::DOMDataStore::DOMDataStore):
3260 (WebCore::DOMDataStore::~DOMDataStore):
3261 (WebCore::DOMDataStore::allStoresMutex):
3262 (WebCore::DOMDataStore::weakNodeCallback):
3263 * bindings/v8/DOMDataStore.h:
3264 * bindings/v8/MainThreadDOMData.cpp: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
3265 (WebCore::MainThreadDOMData::MainThreadDOMData):
3266 (WebCore::MainThreadDOMData::getCurrent):
3267 (WebCore::MainThreadDOMData::getMainThreadStore):
3268 (WebCore::MainThreadDOMData::getCurrentMainThreadStore):
3269 * bindings/v8/MainThreadDOMData.h: Copied from Source/WebCore/bindings/v8/DOMData.cpp.
3270 (WebCore::MainThreadDOMData::getStore):
3271 * bindings/v8/V8DOMMap.cpp:
3272 (WebCore::getDOMDataStore):
3273 (WebCore::removeAllDOMObjectsInCurrentThread):
3274 (WebCore::visitDOMNodesInCurrentThread):
3275 (WebCore::visitDOMObjectsInCurrentThread):
3276 (WebCore::visitActiveDOMObjectsInCurrentThread):
3277 (WebCore::visitDOMSVGElementInstancesInCurrentThread):
3278 * bindings/v8/V8DOMMap.h:
3279 * bindings/v8/V8GCController.cpp:
3280 (WebCore::V8GCController::gcPrologue):
3281 (WebCore::V8GCController::gcEpilogue):
3282 * bindings/v8/WorkerScriptController.cpp:
3283 (WebCore::WorkerScriptController::~WorkerScriptController):
3285 2011-06-07 Simon Fraser <simon.fraser@apple.com>
3287 Reviewed by Dave Hyatt.
3289 Clean up ContentData
3290 https://bugs.webkit.org/show_bug.cgi?id=62185
3292 ContentData did manual ref()/deref() and had a lot of awkward
3293 code from using a union to store data.
3295 Clean this up by adding ContentData subclasses for different
3296 content types, which are then able to use RefPtr and OwnPtr
3299 * css/CSSComputedStyleDeclaration.cpp:
3300 (WebCore::contentToCSSValue): Cast to different ContentData types as
3303 * css/CSSStyleSelector.cpp:
3304 (WebCore::CSSStyleSelector::loadPendingImages): Cast to ImageContentData, and do some
3307 * html/HTMLBRElement.cpp:
3308 (WebCore::HTMLBRElement::createRenderer): Use hasContent().
3309 * html/HTMLFrameSetElement.cpp:
3310 (WebCore::HTMLFrameSetElement::createRenderer): Ditto
3311 * html/HTMLImageElement.cpp:
3312 (WebCore::HTMLImageElement::createRenderer): Ditto
3313 * rendering/RenderObject.cpp:
3314 (WebCore::RenderObject::createObject): Cast to ImageContentData.
3315 * rendering/RenderObjectChildList.cpp:
3316 (WebCore::RenderObjectChildList::updateBeforeAfterContent): Cast to different ContentData types as
3319 * rendering/style/ContentData.h:
3320 (WebCore::ContentData::~ContentData):
3321 (WebCore::ContentData::isCounter):
3322 (WebCore::ContentData::isImage):
3323 (WebCore::ContentData::isQuote):
3324 (WebCore::ContentData::isText):
3325 (WebCore::ContentData::next):
3326 (WebCore::ContentData::setNext):
3327 (WebCore::ImageContentData::image):
3328 (WebCore::ImageContentData::setImage):
3329 (WebCore::ImageContentData::ImageContentData):
3330 (WebCore::ImageContentData::type):
3331 (WebCore::ImageContentData::isImage):
3332 (WebCore::TextContentData::text):
3333 (WebCore::TextContentData::setText):
3334 (WebCore::TextContentData::TextContentData):
3335 (WebCore::TextContentData::type):
3336 (WebCore::TextContentData::isText):
3337 (WebCore::CounterContentData::counter):
3338 (WebCore::CounterContentData::setCounter):
3339 (WebCore::CounterContentData::CounterContentData):
3340 (WebCore::CounterContentData::type):
3341 (WebCore::CounterContentData::isCounter):
3342 (WebCore::QuoteContentData::quote):
3343 (WebCore::QuoteContentData::setQuote):
3344 (WebCore::QuoteContentData::QuoteContentData):
3345 (WebCore::QuoteContentData::type):
3346 (WebCore::QuoteContentData::isQuote):
3347 Add subclasses for different content types, which are created
3348 via overloaded create() methods on the base class.
3350 * rendering/style/ContentData.cpp:
3351 (WebCore::ContentData::create):
3352 (WebCore::operator==): Test for type equality, followed by comparing data.
3353 (WebCore::operator!=):
3355 * rendering/style/RenderStyle.cpp:
3356 (WebCore::RenderStyle::clearContent):
3357 (WebCore::RenderStyle::appendContent):
3358 (WebCore::RenderStyle::setContent): Replace the overly complex prepareToSetContent()
3359 code with code that either appends, or replaces the content.
3360 This loses an optimization where the existing ContentData object could get reused,
3361 but this seems to be rarely hit in practice.
3362 * rendering/style/RenderStyle.h:
3363 (WebCore::InheritedFlags::hasContent): Convenience method.
3364 * rendering/style/StyleRareNonInheritedData.cpp:
3365 (WebCore::StyleRareNonInheritedData::contentDataEquivalent): Test
3366 that the pointers are non-null, then use the != operator.
3367 * rendering/style/StyleRareNonInheritedData.h: ContentData is a class now.
3369 2011-06-07 Brian Weinstein <bweinstein@apple.com>
3371 Build fix after r88260.
3373 * platform/graphics/win/FontCacheWin.cpp:
3374 (WebCore::FontCache::getFontDataForCharacters): Update to use enum instead of bool.
3375 * platform/graphics/wince/FontCacheWinCE.cpp:
3377 2011-06-07 Rob Buis <rbuis@rim.com>
3379 Reviewed by Dirk Schulze.
3381 stroke-dasharray does not handle "none"
3382 https://bugs.webkit.org/show_bug.cgi?id=62203
3384 Use the initial strokeDashArray style for stroke-dasharray="none" to apply to SVGRenderStyle rather than bailing out.
3386 Tests: svg/W3C-SVG-1.1-SE/styling-css-04-f.svg
3387 svg/custom/invalid-dasharray.svg
3389 * css/SVGCSSStyleSelector.cpp:
3390 (WebCore::CSSStyleSelector::applySVGProperty):
3392 2011-06-07 Sheriff Bot <webkit.review.bot@gmail.com>
3394 Unreviewed, rolling out r88259 and r88263.
3395 http://trac.webkit.org/changeset/88259
3396 http://trac.webkit.org/changeset/88263
3397 https://bugs.webkit.org/show_bug.cgi?id=62228
3399 broke builds (Requested by rniwa on #webkit).
3401 * platform/mac/WebCoreSystemInterface.h:
3402 * platform/network/ResourceHandle.h:
3403 * platform/network/cf/ResourceRequest.h:
3405 2011-06-07 Emil A Eklund <eae@chromium.org>
3407 Reviewed by Eric Seidel.
3409 Switch ContainerNode to use IntPoint
3410 https://bugs.webkit.org/show_bug.cgi?id=61893
3412 Covered by existing tests.
3414 * dom/ContainerNode.cpp:
3415 (WebCore::ContainerNode::getUpperLeftCorner):
3416 (WebCore::ContainerNode::getLowerRightCorner):
3417 (WebCore::ContainerNode::getRect):
3418 Change to use maxX/maxY instead of x+width/y+height
3420 * platform/graphics/FloatPoint.h:
3421 (WebCore::FloatPoint::move):
3422 (WebCore::FloatPoint::moveBy):
3423 (WebCore::FloatPoint::expandedTo):
3424 Add move, moveBy and expandedTo mirroring the IntPoint implementation of the same.
3426 2011-06-07 Ryosuke Niwa <rniwa@webkit.org>
3428 Speculative build fix after r88259.
3430 * platform/network/cf/ResourceRequest.h:
3432 2011-06-07 Michael Saboff <msaboff@apple.com>
3434 Reviewed by Geoffrey Garen.
3436 Need to enable font cache purging in MemoryPressureHandler
3437 https://bugs.webkit.org/show_bug.cgi?id=62060
3439 Improve memory usage under pressure.
3440 Added call to fontCache()->purgeInactiveFontData() in
3441 MemoryPressureHandler::respondToMemoryPressure(). Added protection to
3442 MemoryPressureHandler::install() being called multiple times.
3444 No new tests as funtionality wasn't changed.
3446 * platform/MemoryPressureHandler.cpp:
3447 (WebCore::MemoryPressureHandler::MemoryPressureHandler):
3448 * platform/MemoryPressureHandler.h:
3449 * platform/mac/MemoryPressureHandlerMac.mm:
3450 (WebCore::MemoryPressureHandler::install):
3451 (WebCore::MemoryPressureHandler::respondToMemoryPressure):
3453 2011-06-07 Michael Saboff <msaboff@apple.com>
3455 Reviewed by Geoffrey Garen.
3457 Fonts returned by FontCache::getFontDataForCharacters() are never released
3458 https://bugs.webkit.org/show_bug.cgi?id=61875
3460 This change allows fonts allocated as system fallback fonts to be
3461 released. Previously, the reference counts for these fonts grew
3462 without bound. This is implemented as an auto release class that wraps
3463 accesses to the cache for system fallback fonts. All such accesses are
3464 via the method FontCache::getFontDataForCharacters. The new class is
3465 called FontCachePurgePreventer. When such an object exists, it protects
3466 these fonts from deletion.
3468 Most accesses to the font cache still use the reference counting
3469 implemented by FontCache::getCacheFontData() and
3470 FontCache::releaseFontData() and that operation is not affected by
3473 Added local scoped instance of FontCachePurgePreventer to wrap code
3474 that directly or indirectly accesses fonts via getFontDataForCharacters.
3475 Did a few other miscellaneous bug fixes and changes to allow system
3476 fallback fonts to be pruned from the GlyphPageTree. Changed the
3477 calls to getFontData in the platform specific versions of
3478 Fontcache::getFontDataForCharacters to not increment the reference
3479 count. Moved the purge font check
3480 outside of FontCache::getCachedFontData() into a separate method,
3481 purgeInactiveFontDataIfNeeded() since almost all calls to
3482 getCachedFontData() now happen when purging is not allowed.
3483 purgeInactiveFontDataIfNeeded is invoked in enablePurging() when
3484 m_purgePreventCount is 0.
3486 No new test as the functionality has not changed. Improved font life
3489 * WebCore.exp.in: Added FontCache::purgeInactiveFontDataIfNeeded().
3490 * html/canvas/CanvasRenderingContext2D.cpp:
3491 (WebCore::CanvasRenderingContext2D::measureText):
3492 (WebCore::CanvasRenderingContext2D::drawTextInternal):
3493 Wrapped code accessing fallback fonts with local
3494 FontCachePurgePreventer in these methods.
3496 * page/FrameView.cpp:
3497 (WebCore::FrameView::layout):
3498 (WebCore::FrameView::paintContents):
3499 Wrapped code accessing fallback fonts with local
3500 FontCachePurgePreventer in these methods.
3502 * platform/graphics/FontCache.cpp:
3503 (WebCore::FontCache::FontCache):
3504 (WebCore::FontCache::getCachedFontData):
3505 Moved purge check to new method since it likely can't happen here.
3506 (WebCore::FontCache::releaseFontData):
3507 (WebCore::FontCache::purgeInactiveFontDataIfNeeded):
3508 (WebCore::FontCache::purgeInactiveFontData):
3509 Made purging conditional on m_purgePreventCount. Now some fonts
3510 in the cache are reference counted while other can be purged
3511 outside of code wrapped by in scope FontCachePurgePreventer objects.
3513 * platform/graphics/FontCache.h:
3514 (WebCore::FontCache::disablePurging):
3515 (WebCore::FontCache::enablePurging):
3516 (WebCore::FontCachePurgePreventer::FontCachePurgePreventer):
3517 (WebCore::FontCachePurgePreventer::~FontCachePurgePreventer):
3518 Added new simple purge prevention wrapper class and methods
3519 that it calls in FontCache actually prevent purging. The
3520 simple methods inlined to reduce overhead.
3522 * platform/graphics/FontFastPath.cpp:
3523 (WebCore::Font::glyphDataForCharacter): Update level in
3524 glyph page tree for system fallback fonts so pruning works.
3526 * platform/graphics/GlyphPage.h:
3527 (WebCore::GlyphPage::clearForFontData): New method used for pruning
3528 * platform/graphics/GlyphPageTreeNode.cpp:
3529 (WebCore::GlyphPageTreeNode::pruneFontData):
3530 Now we prune system fallback fonts.
3532 * platform/graphics/chromium/FontCacheChromiumWin.cpp:
3533 (WebCore::FontCache::getFontDataForCharacters):
3534 * platform/graphics/freetype/FontCacheFreeType.cpp:
3535 (WebCore::FontCache::getFontDataForCharacters):
3536 * platform/graphics/haiku/FontCacheHaiku.cpp:
3537 (WebCore::FontCache::getFontDataForCharacters):
3538 * platform/graphics/mac/FontCacheMac.mm:
3539 (WebCore::FontCache::getFontDataForCharacters):
3540 * platform/graphics/qt/FontCacheQt.cpp:
3541 (WebCore::FontCache::getFontDataForCharacters):
3542 * platform/graphics/win/FontCacheWin.cpp:
3543 (WebCore::FontCache::getFontDataForCharacters):
3544 * platform/graphics/wince/FontCacheWinCE.cpp:
3545 * platform/graphics/wx/FontCacheWx.cpp:
3546 (WebCore::FontCache::getFontDataForCharacters):
3547 Changed the calls to getFontData() to not increment the reference
3548 count. The caller of this getFontDataForCharacters() (currently only
3549 Font::glyphDataForCharacter() in fontFastPath.cpp) and it's callers
3550 don't attempt to release the returned fonts so we use the purge
3551 protection described above.
3553 * rendering/InlineTextBox.cpp:
3554 (WebCore::InlineTextBox::selectionRect):
3555 (WebCore::InlineTextBox::offsetForPosition):
3556 (WebCore::InlineTextBox::positionForOffset):
3557 Wrapped code accessing fallback fonts with local
3558 FontCachePurgePreventer in these methods.
3560 * rendering/RenderImage.cpp:
3561 (WebCore::RenderImage::setImageSizeForAltText):
3562 Wrapped code accessing fallback fonts with local
3563 FontCachePurgePreventer in this method.
3565 * rendering/RenderListBox.cpp:
3566 (WebCore::RenderListBox::updateFromElement):
3567 (WebCore::RenderListBox::paintItemForeground):
3568 Wrapped code accessing fallback fonts with local
3569 FontCachePurgePreventer in these methods
3571 * rendering/svg/SVGInlineTextBox.cpp:
3572 (WebCore::SVGInlineTextBox::selectionRectForTextFragment):
3573 Wrapped code accessing fallback fonts with local
3574 FontCachePurgePreventer in this method.
3576 2011-06-07 Tim Horton <timothy_horton@apple.com>
3578 Reviewed by Alexey Proskuryakov.
3580 Use correct CFURLStorageSessionRef definition on Snow Leopard
3581 https://bugs.webkit.org/show_bug.cgi?id=62223
3583 * platform/mac/WebCoreSystemInterface.h:
3584 * platform/network/ResourceHandle.h:
3585 * platform/network/cf/ResourceRequest.h:
3587 2011-06-07 Alok Priyadarshi <alokp@chromium.org>
3589 Reviewed by Stephen White.
3591 [chromium] PlatformContextSkia leaks SkDeviceFactory
3592 https://bugs.webkit.org/show_bug.cgi?id=62163
3594 Valgrind tests should have caught this.
3596 * platform/graphics/skia/PlatformContextSkia.cpp:
3597 (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
3599 2011-06-07 Emil A Eklund <eae@chromium.org>
3601 Reviewed by Eric Seidel.
3603 Convert RenderTextControl::hitInnerTextElement to IntPoint
3604 https://bugs.webkit.org/show_bug.cgi?id=62167
3606 Covered by existing tests.
3608 * rendering/RenderTextControl.cpp:
3609 (WebCore::RenderTextControl::hitInnerTextElement):
3610 * rendering/RenderTextControl.h:
3611 * rendering/RenderTextControlMultiLine.cpp:
3612 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
3613 * rendering/RenderTextControlSingleLine.cpp:
3614 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
3616 2011-06-07 Levi Weintraub <leviw@chromium.org>
3618 Reviewed by Eric Seidel.
3620 Switch paint to use IntPoint
3621 https://bugs.webkit.org/show_bug.cgi?id=62177
3623 Flipping the switch on the remaining paint functions to have them all
3624 use IntPoint for the paint offset instead of tx/ty.
3626 No new tests since this is just refactoring.
3628 * page/FrameView.cpp:
3629 (WebCore::FrameView::paintScrollCorner):
3630 * rendering/InlineBox.cpp:
3631 (WebCore::InlineBox::paint):
3632 * rendering/RenderBlock.cpp:
3633 (WebCore::RenderBlock::paint):
3634 (WebCore::RenderBlock::paintContents):
3635 (WebCore::RenderBlock::paintChildren):
3636 (WebCore::RenderBlock::paintFloats):
3637 * rendering/RenderBlock.h:
3638 * rendering/RenderBox.cpp:
3639 (WebCore::RenderBox::paint):
3640 * rendering/RenderBox.h:
3641 * rendering/RenderBoxModelObject.cpp:
3642 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
3643 * rendering/RenderDetailsMarker.cpp:
3644 (WebCore::RenderDetailsMarker::paint):
3645 * rendering/RenderDetailsMarker.h:
3646 * rendering/RenderEmbeddedObject.cpp:
3647 (WebCore::RenderEmbeddedObject::paint):
3648 * rendering/RenderEmbeddedObject.h:
3649 * rendering/RenderFrameSet.cpp:
3650 (WebCore::RenderFrameSet::paint):
3651 * rendering/RenderFrameSet.h:
3652 * rendering/RenderImage.cpp:
3653 (WebCore::RenderImage::paint):
3654 * rendering/RenderImage.h:
3655 * rendering/RenderInline.cpp:
3656 (WebCore::RenderInline::paint):
3657 * rendering/RenderInline.h:
3658 * rendering/RenderLayer.cpp:
3659 (WebCore::RenderLayer::paintScrollCorner):
3660 (WebCore::RenderLayer::paintResizer):
3661 (WebCore::RenderLayer::paintLayer):
3662 * rendering/RenderLayerBacking.cpp:
3663 (WebCore::RenderLayerBacking::paintIntoLayer):
3664 * rendering/RenderLineBoxList.cpp:
3665 (WebCore::RenderLineBoxList::paint):
3666 * rendering/RenderLineBoxList.h:
3667 * rendering/RenderListItem.cpp:
3668 (WebCore::RenderListItem::paint):
3669 * rendering/RenderListItem.h:
3670 * rendering/RenderListMarker.cpp:
3671 (WebCore::RenderListMarker::paint):
3672 * rendering/RenderListMarker.h:
3673 * rendering/RenderObject.cpp:
3674 (WebCore::RenderObject::paint):
3675 * rendering/RenderObject.h:
3676 * rendering/RenderReplaced.cpp:
3677 (WebCore::RenderReplaced::paint):
3678 * rendering/RenderReplaced.h:
3679 * rendering/RenderReplica.cpp:
3680 (WebCore::RenderReplica::paint):
3681 * rendering/RenderReplica.h:
3682 * rendering/RenderScrollbar.cpp:
3683 (WebCore::RenderScrollbar::paintPart):
3684 * rendering/RenderScrollbarPart.cpp:
3685 (WebCore::RenderScrollbarPart::paintIntoRect):
3686 * rendering/RenderScrollbarPart.h:
3687 * rendering/RenderTable.cpp:
3688 (WebCore::RenderTable::paint):
3689 (WebCore::RenderTable::paintObject):
3690 * rendering/RenderTable.h:
3691 * rendering/RenderTableCell.cpp:
3692 (WebCore::RenderTableCell::paint):
3693 * rendering/RenderTableCell.h:
3694 * rendering/RenderTableRow.cpp:
3695 (WebCore::RenderTableRow::paint):
3696 * rendering/RenderTableRow.h:
3697 * rendering/RenderTableSection.cpp:
3698 (WebCore::RenderTableSection::paint):
3699 (WebCore::RenderTableSection::paintCell):
3700 * rendering/RenderTableSection.h:
3701 * rendering/RenderText.h:
3702 (WebCore::RenderText::paint):
3703 * rendering/RenderTextControlSingleLine.cpp:
3704 (WebCore::RenderTextControlSingleLine::paint):
3705 * rendering/RenderTextControlSingleLine.h:
3706 * rendering/RenderView.cpp:
3707 (WebCore::RenderView::paint):
3708 * rendering/RenderView.h:
3709 * rendering/RenderWidget.cpp:
3710 (WebCore::RenderWidget::paint):
3711 * rendering/RenderWidget.h:
3712 * rendering/mathml/RenderMathMLBlock.cpp:
3713 (WebCore::RenderMathMLBlock::paint):
3714 * rendering/mathml/RenderMathMLBlock.h:
3715 * rendering/mathml/RenderMathMLFraction.cpp:
3716 (WebCore::RenderMathMLFraction::paint):
3717 * rendering/mathml/RenderMathMLFraction.h:
3718 * rendering/mathml/RenderMathMLRoot.cpp:
3719 (WebCore::RenderMathMLRoot::paint):
3720 * rendering/mathml/RenderMathMLRoot.h:
3721 * rendering/mathml/RenderMathMLSquareRoot.cpp:
3722 (WebCore::RenderMathMLSquareRoot::paint):
3723 * rendering/mathml/RenderMathMLSquareRoot.h:
3724 * rendering/svg/RenderSVGContainer.cpp:
3725 (WebCore::RenderSVGContainer::paint):
3726 * rendering/svg/RenderSVGContainer.h:
3727 * rendering/svg/RenderSVGForeignObject.cpp:
3728 (WebCore::RenderSVGForeignObject::paint):
3729 * rendering/svg/RenderSVGForeignObject.h:
3730 * rendering/svg/RenderSVGHiddenContainer.cpp:
3731 (WebCore::RenderSVGHiddenContainer::paint):
3732 * rendering/svg/RenderSVGHiddenContainer.h:
3733 * rendering/svg/RenderSVGImage.cpp:
3734 (WebCore::RenderSVGImage::paint):
3735 * rendering/svg/RenderSVGImage.h:
3736 * rendering/svg/RenderSVGPath.cpp:
3737 (WebCore::RenderSVGPath::paint):
3738 * rendering/svg/RenderSVGPath.h:
3739 * rendering/svg/RenderSVGResourceMarker.cpp:
3740 (WebCore::RenderSVGResourceMarker::draw):
3741 * rendering/svg/RenderSVGRoot.cpp:
3742 (WebCore::RenderSVGRoot::paint):
3743 * rendering/svg/RenderSVGRoot.h:
3744 * rendering/svg/RenderSVGText.cpp:
3745 (WebCore::RenderSVGText::paint):
3746 * rendering/svg/RenderSVGText.h:
3747 * rendering/svg/SVGImageBufferTools.cpp:
3748 (WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer):
3750 2011-06-07 Young Han Lee <joybro@company100.net>
3752 Reviewed by Kenneth Rohde Christiansen.
3754 [Texmap][Qt] Accelerated animation is not paused properly.
3755 https://bugs.webkit.org/show_bug.cgi?id=61446
3757 The transform matrix of an accelerated animation shouldn't be synced with the matrix of the GraphicsLayer when the animation is paused.
3759 Test: animations/play-state-paused.html
3761 * platform/graphics/texmap/TextureMapperNode.cpp:
3762 (WebCore::TextureMapperNode::syncCompositingStateSelf):
3763 (WebCore::TextureMapperNode::hasOpacityAnimation):
3764 (WebCore::TextureMapperNode::hasTransformAnimation):
3765 * platform/graphics/texmap/TextureMapperNode.h:
3767 2011-06-07 Lucas De Marchi <lucas.demarchi@profusion.mobi>
3769 Reviewed by Antonio Gomes.
3771 [EFL] Remove Ecore_X bits from PlatformScreenEfl
3772 https://bugs.webkit.org/show_bug.cgi?id=61649
3774 Remove the need for Ecore_X and some X calls by always using
3775 new functions available in EFL to get the screen size.
3777 No new tests since the same functionality are done inside EFL now.
3779 * platform/efl/PlatformScreenEfl.cpp:
3780 (WebCore::screenRect):
3782 2011-06-07 Carlos Garcia Campos <cgarcia@igalia.com>
3784 Reviewed by Martin Robinson.
3786 [GTK] Move moduleMixesGtkSymbols() from PluginPackage to PluginView
3787 https://bugs.webkit.org/show_bug.cgi?id=62200
3789 In WebKit2 PluginPackage is used by the UI process to load plugins
3790 in order to get information about them, but it doesn't use any GTK
3791 symbol. So the UI process should be able to load plugins even when
3792 building with GTK3, but we should not allow the plugin view to use
3793 the plugin if it mixes GTK2 and GTK3 symbols.
3795 * plugins/PluginPackage.h:
3796 (WebCore::PluginPackage::module): New method to return the
3798 * plugins/gtk/PluginPackageGtk.cpp:
3799 (WebCore::PluginPackage::load): Remove moduleMixesGtkSymbols().
3800 * plugins/gtk/PluginViewGtk.cpp:
3801 (WebCore::PluginView::updatePluginWidget): Check whether plugin
3802 was successfully loaded before trying to create the drawable.
3803 (WebCore::PluginView::paint): Return early if plugin didn't start
3804 or was not successfully loaded.
3805 (WebCore::PluginView::handleKeyboardEvent): Ditto.
3806 (WebCore::PluginView::handleMouseEvent): Ditto.
3807 (WebCore::PluginView::handleFocusInEvent): Ditto.
3808 (WebCore::PluginView::handleFocusOutEvent): Ditto.
3809 (WebCore::moduleMixesGtkSymbols):
3810 (WebCore::PluginView::platformStart): Check whether module is
3811 mixing GTK+ 2 and GTK+ 3 symbols.
3813 2011-06-07 Sheriff Bot <webkit.review.bot@gmail.com>
3815 Unreviewed, rolling out r88238.
3816 http://trac.webkit.org/changeset/88238
3817 https://bugs.webkit.org/show_bug.cgi?id=62216
3819 Broke a couple of inspector tests (Requested by apavlov on
3822 * inspector/front-end/StylesSidebarPane.js:
3823 (WebInspector.StylesSidebarPane.prototype.update):
3825 2011-06-07 Dinu Jacob <dinu.jacob@nokia.com>
3827 Reviewed by Dimitri Glazkov.
3829 Inform ChromeClient touch events are not needed by the webpage when navigating away from the page instead of in both Document:detach/CachedFrame
3830 https://bugs.webkit.org/show_bug.cgi?id=61543
3832 Inform chrome client that touch events are not needed by the webpage
3833 when navigating away from the page only once to avoid the flag being
3834 overwritten later if a page is removed from the page cache
3837 (WebCore::Document::detach):
3838 * history/CachedFrame.cpp:
3839 (WebCore::CachedFrame::CachedFrame):
3840 * loader/FrameLoader.cpp:
3841 (WebCore::FrameLoader::transitionToCommitted):
3843 2011-06-07 Alexander Pavlov <apavlov@chromium.org>
3845 Reviewed by Yury Semikhatsky.
3847 Web Inspector: node selection is slow in the Elements panel.
3848 https://bugs.webkit.org/show_bug.cgi?id=60813
3850 Schedule full style updates rather than request all node styles from the backend immediately.
3852 * inspector/front-end/StylesSidebarPane.js:
3853 (WebInspector.StylesSidebarPane.prototype.update.reloadAllStyles):
3854 (WebInspector.StylesSidebarPane.prototype.update):
3856 2011-06-07 Yury Semikhatsky <yurys@chromium.org>
3858 Reviewed by Pavel Feldman.
3860 Web Inspector: remove duplicate breakpoints from localStorage
3861 https://bugs.webkit.org/show_bug.cgi?id=62206
3863 Perform one-time breakpoint storage cleanup to get rid of duplicate breakpoints in
3864 case when settings version is less than 1.
3866 * inspector/front-end/Settings.js:
3867 (WebInspector.Settings):
3868 (WebInspector.Settings.prototype._set):
3869 (WebInspector.Settings.prototype._migrateSettings.splitObjects):
3870 (WebInspector.Settings.prototype._migrateSettings.removeDuplicateObjects):
3871 (WebInspector.Settings.prototype._migrateSettings):
3873 2011-06-03 Yury Semikhatsky <yurys@chromium.org>
3875 Reviewed by Pavel Feldman.
3877 [Chromium] Web Inspector: correctly handle disconnect from worker when script execution is paused
3878 https://bugs.webkit.org/show_bug.cgi?id=62019
3880 Dispatch disconnecFrontend message in debugger task mode to make sure
3881 it is processed even if execution is paused.
3883 * bindings/v8/WorkerScriptDebugServer.cpp:
3884 (WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
3885 (WebCore::WorkerScriptDebugServer::quitMessageLoopOnPause):
3886 * bindings/v8/WorkerScriptDebugServer.h:
3888 2011-06-07 Felician Marton <marton.felician.zoltan@stud.u-szeged.hu>
3890 Reviewed by Nikolas Zimmermann.
3892 SVG animation beginElement() does not restart the animation after endElement().
3893 https://bugs.webkit.org/show_bug.cgi?id=43452
3895 Test: svg/animations/animate-endElement-beginElement.html
3897 Calling beginElement() after calling endElement() previously does not restarted the animation when animation
3898 element's end attribute doesn't contains a bigger value than the current animation time.
3900 * svg/animation/SVGSMILElement.cpp:
3901 (WebCore::SVGSMILElement::findInstanceTime):
3903 2011-06-07 Naoki Takano <takano.naoki@gmail.com>
3905 Reviewed by Kent Tamura.
3907 [Chromium] Click event is not fired for a menulist <select>
3908 https://bugs.webkit.org/show_bug.cgi?id=60563
3910 Tests: SelectItemEventFire, SelectItemKeyEvent, SelectItemRemoveSelectOnChange and SelectItemRemoveSelectOnChange in webkit_unit_tests.
3912 * platform/chromium/PopupMenuChromium.cpp:
3913 (WebCore::PopupContainer::showPopup): Set m_focusedNode from m_frameView.
3914 (WebCore::PopupListBox::handleMouseReleaseEvent): Call dispatchMouseEvent to forward the event only if select popup.
3915 (WebCore::PopupListBox::acceptIndex): Change to return accepted or not.
3917 2011-06-07 Andras Becsi <abecsi@webkit.org>
3919 Reviewed by Yury Semikhatsky.
3921 REGRESSION(r88221): "Chromium debug compilation broken".
3922 https://bugs.webkit.org/show_bug.cgi?id=62197
3924 No new tests needed.
3926 * bindings/v8/V8GCController.cpp: Also rename call-sites.
3927 (WebCore::V8GCController::gcPrologue):
3928 (WebCore::V8GCController::gcEpilogue):
3930 2011-06-07 MORITA Hajime <morrita@google.com>
3932 Unreviewed, rolling out r88212 and r88219.
3933 http://trac.webkit.org/changeset/88212
3934 http://trac.webkit.org/changeset/88219
3935 https://bugs.webkit.org/show_bug.cgi?id=57439
3937 Tests get timeout at Snow Leopard
3940 (html:focus, body:focus, input[readonly]:focus):
3941 * rendering/RenderWidget.cpp:
3942 (WebCore::RenderWidget::paint):
3944 2011-06-07 Andras Becsi <abecsi@webkit.org>
3946 Rubber-stamped by Csaba Osztrogonác.
3948 [Qt][V8] Fix the build after 88221.
3950 No new tests needed.
3952 * WebCore.pro: Remove non-existing files.
3953 * bindings/v8/V8DOMMap.cpp:
3954 (WebCore::removeAllDOMObjects): Also rename the definition of the function.
3956 2011-06-06 Dmitry Lomov <dslomov@google.com>
3958 Reviewed by Adam Barth.
3960 https://bugs.webkit.org/show_bug.cgi?id=62164
3961 Remove "multi-threaded" logic in V8 DOMData, DOMDataStore and friends
3962 This functionality is untested and unused:
3963 This is an old code from Lockers-based implementation of WebWorkers in
3964 V8 bindings, to make sure that DOM objects are released on the right thread
3965 even though GC could have happened on any thread. It is currently unused (since
3966 current model is one worker per process) and is being removed because new implementation
3967 of WebWorkers will be using V8 isolates.
3970 * bindings/v8/ChildThreadDOMData.cpp: Removed.
3971 * bindings/v8/ChildThreadDOMData.h: Removed.
3972 * bindings/v8/DOMData.cpp:
3973 (WebCore::DOMData::DOMData):
3974 (WebCore::DOMData::getCurrent):
3975 (WebCore::DOMData::getMainThreadStore):
3976 * bindings/v8/DOMData.h:
3977 (WebCore::DOMData::getStore):
3978 (WebCore::DOMData::getCurrentMainThreadStore):
3979 (WebCore::DOMData::handleWeakObject):
3980 * bindings/v8/DOMDataStore.cpp:
3981 (WebCore::DOMDataStore::DOMDataStore):
3982 (WebCore::DOMDataStore::~DOMDataStore):
3983 (WebCore::DOMDataStore::weakNodeCallback):
3984 * bindings/v8/DOMDataStore.h:
3985 * bindings/v8/MainThreadDOMData.cpp: Removed.
3986 * bindings/v8/MainThreadDOMData.h: Removed.
3987 * bindings/v8/V8DOMMap.cpp:
3988 (WebCore::getDOMDataStore):
3989 (WebCore::visitDOMNodes):
3990 (WebCore::visitDOMObjects):
3991 (WebCore::visitActiveDOMObjects):
3992 (WebCore::visitDOMSVGElementInstances):
3993 * bindings/v8/V8DOMMap.h:
3994 * bindings/v8/V8GCController.cpp:
3995 (WebCore::V8GCController::gcPrologue):
3996 (WebCore::V8GCController::gcEpilogue):
3997 * bindings/v8/WorkerScriptController.cpp:
3998 (WebCore::WorkerScriptController::~WorkerScriptController):
4000 2011-06-06 Nico Weber <thakis@chromium.org>
4002 Reviewed by Adam Barth.
4004 [chromium] Make VideoFrameChromium's destructor virtual
4005 https://bugs.webkit.org/show_bug.cgi?id=62186
4007 This fixes a real bug, since WebMediaPlayerClientImpl::putCurrentFrame
4008 deletes a VideoFrameChromium subclass type through this interface
4009 class, causing ~VideoFrameChromiumImpl's destructor not to run.
4010 (VideoFrameChroimumImpl happens to not have a destructor or any
4011 non-POD member variables, so it's more a latent bug.)
4013 * platform/graphics/chromium/VideoFrameChromium.cpp:
4014 (WebCore::VideoFrameChromium::~VideoFrameChromium):
4015 * platform/graphics/chromium/VideoFrameChromium.h:
4017 2011-06-06 Simon Fraser <simon.fraser@apple.com>
4019 Reviewed by Sammy Weinig.
4021 Remove some unnecessary includes from AnimationBase.cpp
4022 https://bugs.webkit.org/show_bug.cgi?id=62183
4024 * page/animation/AnimationBase.cpp:
4026 2011-06-06 Kent Tamura <tkent@chromium.org>
4028 Unreviewed, a crash fix by a roll out.
4030 REGRESSION(r87980): Null pointer dereference in RenderTextControl::setInnerText()
4031 https://bugs.webkit.org/show_bug.cgi?id=62116
4033 Roll out the WebCore part of r87980.
4035 * html/SearchInputType.cpp:
4036 (WebCore::SearchInputType::SearchInputType):
4037 (WebCore::SearchInputType::createShadowSubtree):
4038 (WebCore::SearchInputType::destroyShadowSubtree):
4039 * html/SearchInputType.h:
4040 (WebCore::SearchInputType::innerBlockElement):
4041 (WebCore::SearchInputType::resultsButtonElement):
4042 (WebCore::SearchInputType::cancelButtonElement):
4043 * html/TextFieldInputType.cpp:
4044 (WebCore::TextFieldInputType::TextFieldInputType):
4045 (WebCore::TextFieldInputType::createShadowSubtree):
4046 (WebCore::TextFieldInputType::destroyShadowSubtree):
4047 * html/TextFieldInputType.h:
4048 (WebCore::TextFieldInputType::innerTextElement):
4049 (WebCore::TextFieldInputType::innerSpinButtonElement):
4050 (WebCore::TextFieldInputType::speechButtonElement):
4051 (WebCore::TextFieldInputType::setInnerTextElement):
4052 (WebCore::TextFieldInputType::setSpeechButtonElement):
4053 * html/shadow/TextControlInnerElements.cpp:
4054 * html/shadow/TextControlInnerElements.h:
4056 2011-06-06 No'am Rosenthal <noam.rosenthal@nokia.com>
4058 Reviewed by Simon Fraser.
4060 Allow copying of KeyframeValueList.
4061 https://bugs.webkit.org/show_bug.cgi?id=62171
4063 Make a deep copy of KeyframeValueList, copying each of the keyframes with a virtual clone() function.
4065 No new functionality so no new tests.
4067 * platform/graphics/GraphicsLayer.h:
4068 (WebCore::FloatAnimationValue::clone):
4069 (WebCore::TransformAnimationValue::TransformAnimationValue):
4070 (WebCore::TransformAnimationValue::clone):
4071 (WebCore::TransformAnimationValue::value):
4072 (WebCore::KeyframeValueList::KeyframeValueList):
4074 2011-06-06 Simon Fraser <simon.fraser@apple.com>
4076 Reviewed by Dan Bernstein.
4078 Incorrect rounding of color values during transitions
4079 https://bugs.webkit.org/show_bug.cgi?id=62141
4081 When blending integers, round to the nearest integer, instead of always rounding down.
4083 Test: transitions/color-transition-rounding.html
4085 * page/animation/AnimationBase.cpp:
4086 (WebCore::blendFunc):
4088 2011-06-06 Sheriff Bot <webkit.review.bot@gmail.com>
4090 Unreviewed, rolling out r88202.
4091 http://trac.webkit.org/changeset/88202
4092 https://bugs.webkit.org/show_bug.cgi?id=62182
4094 This broke the mac clang bot (Requested by koz__ on #webkit).
4097 (WebCore::Node::hasNonEmptyBoundingBox):
4098 * rendering/InlineBox.h:
4099 * rendering/RenderBlock.cpp:
4100 (WebCore::RenderBlock::absoluteRects):
4101 * rendering/RenderBlock.h: