1 2009-02-24 Alexey Proskuryakov <ap@webkit.org>
3 Reviewed by Darin Adler.
5 https://bugs.webkit.org/show_bug.cgi?id=24091
6 <rdar://problem/6468660> Start of redirect chain ends up as master entry in Application Cache
8 Test: http/tests/appcache/access-via-redirect.php
10 * loader/appcache/ApplicationCacheGroup.cpp:
11 (WebCore::ApplicationCacheGroup::finishedLoadingMainResource): Use the URL we ended up with,
14 2009-02-24 Jian Li <jianli@chromium.org>
16 Reviewed by Alexey Proskuryakov.
18 Change to include WorkerObjectProxy.h instead of WorkerMessagingProxy.h in WorkerContext.cpp and WorkerScriptController.cpp.
19 https://bugs.webkit.org/show_bug.cgi?id=24112
21 * bindings/js/WorkerScriptController.cpp:
22 * dom/WorkerContext.cpp:
24 2009-02-23 Antti Koivisto <antti@apple.com>
26 Reviewed by Oliver Hunt.
28 <rdar://problem/6613796> Extended text codecs registered on webview creation
30 Comparing a text encoding with string "GBK" ended up constructing
31 TextEncoding("GBK") which in turn initialized all extended
34 * platform/text/TextCodecICU.cpp:
35 (WebCore::TextCodecICU::decode):
37 2009-02-23 Sam Weinig <sam@webkit.org>
41 * bridge/qt/qt_runtime.cpp:
42 (JSC::Bindings::valueRealType):
44 2009-02-23 Julien Chaffraix <jchaffraix@webkit.org>
46 Reviewed by Darin Adler.
48 Bug 23956: Safari crashes when cloneNode fails (cloning a XML element with an invalid nodeName)
50 The crash occurred because Document::cloneNode would call Document::createElementNS. Unfortunately
51 element created with createElement could have a wrong nodeName (createElement sets the string as the
52 localName without checking for a prefix).
54 The fix is to call Document::createElement(const QualifiedName&, bool) that will not do any checks on the QualifiedName
55 and will always succeed.
56 Also rolled-out the HTMLElement specialisation of clonedNode as it was equivalent to what is done now (added an ASSERT
59 Test: fast/dom/cloneNode.html
62 (WebCore::Element::cloneNode): Call createElement(const QualifiedName&, bool) instead of createElementNS as it will
63 always return an element.
65 * html/HTMLElement.cpp:
66 * html/HTMLElement.h: Removed HTMLElement::clonedNode as it is equivalent to what is now done.
68 2009-02-23 Dimitri Glazkov <dglazkov@chromium.org>
70 Reviewed by Eric Seidel.
72 https://bugs.webkit.org/show_bug.cgi?id=24109
73 Upstream V8 Script abstractions, all except ScriptController.
75 * bindings/v8/ScriptCachedFrameData.h: Added.
76 (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
77 (WebCore::ScriptCachedFrameData::~ScriptCachedFrameData):
78 (WebCore::ScriptCachedFrameData::restore):
79 (WebCore::ScriptCachedFrameData::clear):
80 (WebCore::ScriptCachedFrameData::domWindow):
81 * bindings/v8/ScriptCallFrame.cpp: Added.
82 (WebCore::ScriptCallFrame::ScriptCallFrame):
83 (WebCore::ScriptCallFrame::~ScriptCallFrame):
84 (WebCore::ScriptCallFrame::argumentAt):
85 * bindings/v8/ScriptCallFrame.h: Added.
86 (WebCore::ScriptCallFrame::functionName):
87 (WebCore::ScriptCallFrame::sourceURL):
88 (WebCore::ScriptCallFrame::lineNumber):
89 (WebCore::ScriptCallFrame::argumentCount):
90 * bindings/v8/ScriptCallStack.cpp: Added.
91 (WebCore::ScriptCallStack::ScriptCallStack):
92 (WebCore::ScriptCallStack::~ScriptCallStack):
93 (WebCore::ScriptCallStack::at):
94 * bindings/v8/ScriptCallStack.h: Added.
95 (WebCore::ScriptCallStack::size):
96 * bindings/v8/ScriptInstance.cpp: Added.
97 (WebCore::V8ScriptInstance::V8ScriptInstance):
98 (WebCore::V8ScriptInstance::~V8ScriptInstance):
99 (WebCore::V8ScriptInstance::instance):
100 (WebCore::V8ScriptInstance::clear):
101 (WebCore::V8ScriptInstance::set):
102 * bindings/v8/ScriptInstance.h: Added.
103 (WebCore::V8ScriptInstance::create):
104 * bindings/v8/ScriptSourceCode.h: Added.
105 (WebCore::ScriptSourceCode::ScriptSourceCode):
106 (WebCore::ScriptSourceCode::isEmpty):
107 (WebCore::ScriptSourceCode::source):
108 (WebCore::ScriptSourceCode::url):
109 (WebCore::ScriptSourceCode::startLine):
110 * bindings/v8/ScriptState.h: Added.
111 (WebCore::ScriptState::hadException):
112 (WebCore::ScriptState::setException):
113 (WebCore::ScriptState::exception):
114 * bindings/v8/ScriptString.h: Added.
115 (WebCore::ScriptString::ScriptString):
116 (WebCore::ScriptString::operator String):
117 (WebCore::ScriptString::isNull):
118 (WebCore::ScriptString::size):
119 (WebCore::ScriptString::operator=):
120 (WebCore::ScriptString::operator+=):
121 * bindings/v8/ScriptValue.cpp: Added.
122 (WebCore::ScriptValue::getString):
123 * bindings/v8/ScriptValue.h: Added.
124 (WebCore::ScriptValue::ScriptValue):
125 (WebCore::ScriptValue::operator=):
126 (WebCore::ScriptValue::operator==):
127 (WebCore::ScriptValue::operator!=):
128 (WebCore::ScriptValue::isNull):
129 (WebCore::ScriptValue::isUndefined):
130 (WebCore::ScriptValue::clear):
131 (WebCore::ScriptValue::~ScriptValue):
132 (WebCore::ScriptValue::v8Value):
134 2009-02-23 Adam Treat <adam.treat@torchmobile.com>
136 Reviewed by Timothy Hatcher.
138 https://bugs.webkit.org/show_bug.cgi?id=24106
139 The Qt port is crashing on exit because the tear down procedure involves
140 the WebCore::InspectorController trying to access the JS execution context
141 for a page that is being deleted. This patch amends the inspector so
142 that it does not try and access the execution context of the WebCore::Page
143 in the midst of deletion.
145 * inspector/InspectorController.cpp:
146 (WebCore::InspectorController::inspectedPageDestroyed):
147 (WebCore::InspectorController::stopUserInitiatedProfiling):
149 2009-02-23 David Levin <levin@chromium.org>
151 Reviewed by Alexey Proskuryakov.
153 Bug 24088: ThreadableLoaderClient::didFailWillSendRequestCheck isn't wired up completely for workers and could use a better name.
154 <https://bugs.webkit.org/show_bug.cgi?id=24088>
156 No observable change in behavior, so no test.
158 * loader/DocumentThreadableLoader.cpp:
159 (WebCore::DocumentThreadableLoader::create):
160 * loader/ThreadableLoaderClient.h:
161 (WebCore::ThreadableLoaderClient::didFailRedirectCheck):
162 * loader/ThreadableLoaderClientWrapper.h:
163 (WebCore::ThreadableLoaderClientWrapper::didFailRedirectCheck):
164 * loader/WorkerThreadableLoader.cpp:
165 (WebCore::workerContextDidFailRedirectCheck):
166 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
167 * loader/WorkerThreadableLoader.h:
168 * xml/XMLHttpRequest.cpp:
169 (WebCore::XMLHttpRequest::didFinishLoading):
170 * xml/XMLHttpRequest.h:
172 2009-02-23 David Levin <levin@chromium.org>
174 Reviewed by Alexey Proskuryakov.
176 Bug 24047: Need to simplify nested if's in WorkerRunLoop::runInMode
177 <https://bugs.webkit.org/show_bug.cgi?id=24047>
179 Made a nested if inside of WorkerRunLoop::runInMode a lot simpler by
180 using only MessageQueue::waitForMessageFilteredWithTimeout instead
181 of three different MessageQueue methods.
183 No observable change in behavior, so no test.
185 * dom/WorkerRunLoop.cpp:
186 (WebCore::ModePredicate::operator()):
187 Minor clean-up to able to pass a const ref point for ModePredicate into runInMode.
188 (WebCore::WorkerRunLoop::runInMode):
189 * dom/WorkerRunLoop.h:
191 2009-02-23 David Hyatt <hyatt@apple.com>
193 In preparation for making layers for multicol objects (so that they can properly split child layers
194 into multiple columns), rename all of the "overflowOnly" and "overflowList" members and functions
195 of RenderLayer to use the term "normal flow" instead.
197 Reviewed by Cameron Zwarich
199 * rendering/RenderLayer.cpp:
200 (WebCore::RenderLayer::RenderLayer):
201 (WebCore::RenderLayer::~RenderLayer):
202 (WebCore::RenderLayer::setHasVisibleContent):
203 (WebCore::RenderLayer::enclosingCompositingLayer):
204 (WebCore::RenderLayer::addChild):
205 (WebCore::RenderLayer::removeChild):
206 (WebCore::RenderLayer::paintLayer):
207 (WebCore::RenderLayer::hitTestLayer):
208 (WebCore::RenderLayer::dirtyNormalFlowList):
209 (WebCore::RenderLayer::updateNormalFlowList):
210 (WebCore::RenderLayer::collectLayers):
211 (WebCore::RenderLayer::updateLayerListsIfNeeded):
212 (WebCore::RenderLayer::shouldBeNormalFlowOnly):
213 (WebCore::RenderLayer::styleChanged):
214 * rendering/RenderLayer.h:
215 (WebCore::RenderLayer::isNormalFlowOnly):
216 (WebCore::RenderLayer::normalFlowList):
217 * rendering/RenderTreeAsText.cpp:
218 (WebCore::writeLayers):
220 2009-02-23 David Hyatt <hyatt@apple.com>
222 Fix the stacking order for column rules in multi-column layout. Column rules should paint as part of the background of an element, just
223 after all other components of the background have been painted. This allows negative z-index children to still paint on top of the
224 column rules (rather than ending up above the background of the box but behind the column rules).
226 Reviewed by Eric Seidel
228 Added fast/multicol/column-rules-stacking.html
230 * rendering/RenderBlock.cpp:
231 (WebCore::RenderBlock::paintColumnRules):
232 (WebCore::RenderBlock::paintColumnContents):
233 (WebCore::RenderBlock::paintObject):
234 * rendering/RenderBlock.h:
236 2009-02-23 Adam Treat <adam.treat@torchmobile.com>
238 Reviewed by David Hyatt.
240 No testcases have been added or modified since this patch should not result in
241 a behavior change for ports that have layout tests enabled.
243 Currently, the implementation of GraphicsContext::drawLineForText amongst
244 the various ports differ in that some of them are honoring the context's
245 strokeStyle when drawing a text-decoration and some of them are not.
246 For instance, Apple's Mac port *does not* honor the context's strokeStyle(),
247 but the Cairo implementation does and has an explicit workaround that
248 sets the strokeStyle() temporarily.
250 This patch fixes so that all ports are consistent by explicitly making sure
251 to set the GraphicsContext strokeStyle to SolidStroke whenever
252 painting the text-decoration of an InlineFlowBox or InlineTextBox as these
253 should always use a solid stroke.
255 This patch addresses these bugs:
256 https://bugs.webkit.org/show_bug.cgi?id=19364
257 https://bugs.webkit.org/show_bug.cgi?id=15659
259 * rendering/InlineFlowBox.cpp:
260 (WebCore::InlineFlowBox::paintTextDecorations):
261 * rendering/InlineTextBox.cpp:
262 (WebCore::InlineTextBox::paintDecoration):
264 2009-02-23 Scott Violet <sky@google.com>
266 Reviewed by Eric Seidel.
268 https://bugs.webkit.org/show_bug.cgi?id=24098
269 Bugs in ClipboardChromium
271 Fixes the following bugs in ClipboardChromium:
272 * It's possible for the extension to be empty, resulting in a bad file
273 name, for example, 'foo.' or just '.'.
274 * We weren't restricting the size of the file to MAX_PATH.
275 * We weren't removing characters that are invalid for file system names.
277 * platform/chromium/ClipboardChromium.cpp:
278 (WebCore::writeImageToDataObject):
279 * platform/chromium/ClipboardChromium.h:
280 * platform/chromium/ClipboardChromiumLinux.cpp: Added.
281 (WebCore::ClipboardChromium::validateFileName):
282 * platform/chromium/ClipboardChromiumMac.cpp: Added.
283 (WebCore::ClipboardChromium::validateFileName):
284 * platform/chromium/ClipboardChromiumWin.cpp: Added.
285 (WebCore::isInvalidFileCharacter):
286 (WebCore::ClipboardChromium::validateFileName):
288 2009-02-23 Thiago Macieira <thiago.macieira@nokia.com>
290 Reviewed by Simon Hausmann.
292 Fix the Copyright notices in a few files
294 * platform/qt/RenderThemeQt.h:
296 2009-02-23 Xan Lopez <xan@gnome.org>
298 Reviewed by Alexey Proskuryakov.
300 https://bugs.webkit.org/show_bug.cgi?id=22624
301 [SOUP][GTK] Need API to get SoupSession from WebKit.
303 Allow to retrieve the Soup session and modify the code to take
304 into account users changing features on it.
306 * platform/network/ResourceHandle.h:
307 * platform/network/soup/CookieJarSoup.cpp:
308 (WebCore::defaultCookieJar):
309 (WebCore::setDefaultCookieJar):
310 * platform/network/soup/CookieJarSoup.h:
311 * platform/network/soup/ResourceHandleSoup.cpp:
312 (WebCore::createSoupSession):
313 (WebCore::ensureSessionIsInitialized):
314 (WebCore::ResourceHandle::startHttp):
315 (WebCore::ResourceHandle::cancel):
316 (WebCore::ResourceHandle::defaultSession):
318 2009-02-23 Xan Lopez <xan@gnome.org>
320 Reviewed by Alexey Proskuryakov.
322 https://bugs.webkit.org/show_bug.cgi?id=22624
323 [SOUP][GTK] Need API to get SoupSession from WebKit.
329 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
331 Reviewed by Mark Rowe.
333 Test: fast/dom/empty-hash-and-search.html
335 https://bugs.webkit.org/show_bug.cgi?id=21147
336 hash property returns incorrect value for links w/o hash
338 Make hash() and search() behavior for empty and missing parts match IE and Firefox.
341 (WebCore::KURL::query): Changed to return query without '?', as it is already done for ref().
342 (WebCore::KURL::prettyURL): Append the query with the question mark.
345 (WebCore::Location::search): Return an empty string if query is empty or missing.
346 (WebCore::Location::hash): Return an empty string for empty hashes, not only missing ones.
348 * dom/WorkerLocation.cpp:
349 (WebCore::WorkerLocation::search):
350 (WebCore::WorkerLocation::hash):
351 Match document.location fixes above.
353 * html/HTMLAnchorElement.cpp:
354 (WebCore::HTMLAnchorElement::hash):
355 (WebCore::HTMLAnchorElement::search):
356 Return an empty string for empty and missing parts.
358 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
360 Reviewed by Darin Adler.
362 https://bugs.webkit.org/show_bug.cgi?id=20184
363 SELECT with no name generates invalid query string
365 Test: fast/forms/select-no-name.html
367 * html/HTMLSelectElement.cpp:
368 (WebCore::HTMLSelectElement::appendFormData): Added a check for empty name.
370 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
372 Apply review comments for the previous check-in (forgot to save the file, oops).
374 * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren):
376 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
378 Reviewed by Darin Adler.
380 https://bugs.webkit.org/show_bug.cgi?id=15707
381 Crash when manipulating document from within an iframe onload function
383 Test: fast/dom/onload-open.html
385 * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren): Protect the container and
386 the current node, because anything can happen when dispatching events.
388 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
390 Reviewed by Darin Adler.
392 https://bugs.webkit.org/show_bug.cgi?id=18970
393 Numerically named input fields cause document.forms loop problems
395 Test: fast/forms/numeric-input-name.html
397 * bindings/scripts/CodeGeneratorJS.pm: Try index getter before name getter, even if the
398 latter overrides properties.
400 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
402 Reviewed by Sam Weinig.
404 https://bugs.webkit.org/show_bug.cgi?id=24059
405 Tokenizer::write() return value is never used
408 * dom/XMLTokenizer.cpp:
409 (WebCore::XMLTokenizer::write):
410 * dom/XMLTokenizer.h:
411 * html/HTMLTokenizer.cpp:
412 (WebCore::HTMLTokenizer::write):
413 * html/HTMLTokenizer.h:
414 * loader/FTPDirectoryDocument.cpp:
415 (WebCore::FTPDirectoryTokenizer::write):
416 * loader/ImageDocument.cpp:
417 (WebCore::ImageTokenizer::write):
418 * loader/MediaDocument.cpp:
419 (WebCore::MediaTokenizer::write):
420 * loader/PluginDocument.cpp:
421 (WebCore::PluginTokenizer::write):
422 * loader/TextDocument.cpp:
423 (WebCore::TextTokenizer::write):
424 Made write() return void, not bool.
426 2009-02-20 Geoffrey Garen <ggaren@apple.com>
428 Reviewed by Sam Weinig.
430 Updated for JavaScriptCore changes to timeout checking.
432 * bindings/js/JSCustomPositionCallback.cpp:
433 (WebCore::JSCustomPositionCallback::handleEvent):
434 * bindings/js/JSCustomPositionErrorCallback.cpp:
435 (WebCore::JSCustomPositionErrorCallback::handleEvent):
436 * bindings/js/JSCustomSQLStatementCallback.cpp:
437 (WebCore::JSCustomSQLStatementCallback::handleEvent):
438 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
439 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
440 * bindings/js/JSCustomSQLTransactionCallback.cpp:
441 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
442 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
443 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
444 * bindings/js/JSCustomVoidCallback.cpp:
445 (WebCore::JSCustomVoidCallback::handleEvent):
446 * bindings/js/JSCustomXPathNSResolver.cpp:
447 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
448 * bindings/js/JSDOMWindowBase.cpp:
449 (WebCore::JSDOMWindowBase::JSDOMWindowBase):
450 (WebCore::JSDOMWindowBase::commonJSGlobalData):
451 * bindings/js/JSEventListener.cpp:
452 (WebCore::JSAbstractEventListener::handleEvent):
453 * bindings/js/ScheduledAction.cpp:
454 (WebCore::ScheduledAction::executeFunctionInContext):
455 * bindings/js/ScriptController.cpp:
456 (WebCore::ScriptController::evaluate):
457 * bindings/js/WorkerScriptController.cpp:
458 (WebCore::WorkerScriptController::evaluate):
459 (WebCore::WorkerScriptController::forbidExecution):
460 * bindings/objc/WebScriptObject.mm:
461 (-[WebScriptObject callWebScriptMethod:withArguments:]):
462 (-[WebScriptObject evaluateWebScript:]):
463 * bridge/NP_jsobject.cpp:
464 (_NPN_InvokeDefault):
468 * bridge/jni/jni_jsobject.mm:
469 (JavaJSObject::call):
470 (JavaJSObject::eval):
472 2009-02-21 Hironori Bono <hbono@chromium.org>
474 Reviewed by Alexey Proskuryakov.
476 https://bugs.webkit.org/show_bug.cgi?id=23786
477 [Chromium] line-break characters in a complex text are treated as zero-width spaces
479 This change prevents the UniscribeHelper class from treating the line-break characters
482 Tests: fast/text/international/bidi-linebreak-001.html
483 fast/text/international/bidi-linebreak-002.html
484 fast/text/international/bidi-linebreak-003.html
486 * platform/graphics/chromium/UniscribeHelper.cpp:
487 (WebCore::UniscribeHelper::adjustSpaceAdvances):
488 Make the UniscribeHelper::adjustSpaceAdvances() function treat all characters in
489 the treatAsSpace() function (e.g. U+0020, U+000A, U+000D, U+00A0) as whitespaces,
490 so does when Chromium renders a simple text.
492 2009-02-20 Julien Chaffraix <jchaffraix@webkit.org>
494 Reviewed by Alexey Proskuryakov.
496 Bug 23940: Use Document::createElement(const QualifiedName&, bool) when creating a known element inside WebCore
498 Document::createElement(const QualifiedName&, bool) does not check for the prefix as opposed the the one taking an AtomicString
499 or Document::createElementNS. This is perfectly fine internally because we know the type of element created and the check is
502 It also removes the use of an ExceptionCode argument which was here only to check that the prefix check was fine. Finally it
503 enables us to use some generated QualifiedName.
505 * bindings/js/JSOptionConstructor.cpp:
506 (WebCore::constructHTMLOptionElement):
508 (WebCore::Document::setTitle):
509 * dom/XMLTokenizer.cpp:
510 (WebCore::createXHTMLParserErrorHeader):
511 (WebCore::XMLTokenizer::insertErrorMessageBlock):
512 * editing/CompositeEditCommand.cpp:
513 (WebCore::createBlockPlaceholderElement):
514 * editing/htmlediting.cpp:
515 (WebCore::createTabSpanElement):
516 * html/HTMLSelectElement.cpp:
517 (WebCore::HTMLSelectElement::setLength):
518 * loader/FTPDirectoryDocument.cpp:
519 (WebCore::FTPDirectoryTokenizer::appendEntry):
520 (WebCore::FTPDirectoryTokenizer::createTDForFilename):
521 (WebCore::FTPDirectoryTokenizer::loadDocumentTemplate):
522 (WebCore::FTPDirectoryTokenizer::createBasicDocument):
523 * loader/ImageDocument.cpp:
524 (WebCore::ImageDocument::createDocumentStructure):
525 * loader/MediaDocument.cpp:
526 (WebCore::MediaTokenizer::createDocumentStructure):
527 * loader/PluginDocument.cpp:
528 (WebCore::PluginTokenizer::createDocumentStructure):
529 * loader/TextDocument.cpp:
530 (WebCore::TextTokenizer::write):
532 (WebCore::Frame::selectionComputedStyle):
533 (WebCore::Frame::styleForSelectionStart):
534 Document::createElement(const AtomicString&, ...) to Document::createElement(const QualifiedName&, ...) switch.
536 * xml/XPathFunctions.cpp:
537 (WebCore::XPath::FunLang::evaluate): Re-use langAttr instead of creating a new attribute.
538 * page/DragController.cpp:
539 (WebCore::documentFragmentFromDragData): Use the HTMLAnchorElement directly to get rid of the static cast.
541 2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
543 Reviewed by Eric Seidel.
545 https://bugs.webkit.org/show_bug.cgi?id=24060
546 Fix up to accommodate for CanvasPixelArray return.
548 * platform/graphics/skia/ImageBufferSkia.cpp:
549 (WebCore::ImageBuffer::getImageData): Added an extra data() to call.
550 (WebCore::ImageBuffer::putImageData): Ditto.
552 2009-02-20 Eric Carlson <eric.carlson@apple.com>
556 https://bugs.webkit.org/show_bug.cgi?id=24042
557 Bug 24042: MediaPlayer should cache plug-in proxy
559 The changes in https://bugs.webkit.org/show_bug.cgi?id=23917 assume that
560 MediaPlayer will always have created the private media player object before
561 the plug-in is instantiated and calls back with the proxy object. This is not
562 true on all platforms because of threading latency, so MediaPlayer should
563 cache the plug-in proxy so it can pass it to the media engine at a later time.
565 * platform/graphics/MediaPlayer.cpp:
566 (WebCore::NullMediaPlayerPrivate::setPoster): Null media engine implementation of proxy methods.
567 (WebCore::NullMediaPlayerPrivate::deliverNotification): Ditto.
568 (WebCore::NullMediaPlayerPrivate::setMediaPlayerProxy): Ditto.
569 (WebCore::MediaPlayer::MediaPlayer): Initialize m_playerProxy.
570 (WebCore::MediaPlayer::load): Pass m_playerProxy to newly created engine.
571 (WebCore::MediaPlayer::setMediaPlayerProxy): Cache m_playerProxy.
572 * platform/graphics/MediaPlayer.h: Declare m_playerProxy.
574 2009-02-20 Eric Carlson <eric.carlson@apple.com>
578 https://bugs.webkit.org/show_bug.cgi?id=24063
579 Make it possible for a port to require a user gesture to play/pause an <audio> or <video> element
581 * html/HTMLMediaElement.cpp:
582 (WebCore::HTMLMediaElement::HTMLMediaElement): Rename m_loadRestrictions to m_Restrictions.
583 Initialize m_internalCall.
584 (WebCore::HTMLMediaElement::loadTimerFired): Increment m_internalCall around call to load().
585 (WebCore::HTMLMediaElement::load): Call loadInternal if restrictions check out.
586 (WebCore::HTMLMediaElement::loadInternal): New, guts of old load()
587 (WebCore::HTMLMediaElement::setNetworkState): Fix bug introduced in r40943
588 (WebCore::HTMLMediaElement::play): Call playInternal if restrictions check out.
589 (WebCore::HTMLMediaElement::playInternal): New, guts of old play()
590 (WebCore::HTMLMediaElement::pause): Call pauseInternal if restrictions check out.
591 (WebCore::HTMLMediaElement::pauseInternal): New, guts of old pause()
592 (WebCore::HTMLMediaElement::togglePlayState): Call playInternal/pauseInternal
593 (WebCore::HTMLMediaElement::deliverNotification): Remove unnecessary white space.
594 * html/HTMLMediaElement.h: Rename m_loadRestrictions to m_Restrictions, add m_internalCall,
595 add RequireUserGestureRateChangeRestriction.
597 2009-02-20 Darin Fisher <darin@chromium.org>
599 Fix build bustage in FileSystemWin.cpp.
601 Need to return CString() instead of 0 since there are now two CString
602 constructors that take a pointer type.
604 * platform/win/FileSystemWin.cpp:
605 (WebCore::openTemporaryFile):
607 2009-02-20 Dimitri Glazkov <dglazkov@chromium.org>
609 Reviewed by Sam Weinig.
611 https://bugs.webkit.org/show_bug.cgi?id=23999
612 Change license headers to accurately reflect code history.
614 * platform/ContentType.cpp:
615 * platform/ContentType.h:
617 2009-02-18 Dimitri Glazkov <dglazkov@chromium.org>
619 Reviewed by Antti Koivisto.
621 https://bugs.webkit.org/show_bug.cgi?id=23999
622 Split off MIME type parsing into its own class.
624 * GNUmakefile.am: Added ContentType sources.
625 * WebCore.pro: Ditto.
626 * WebCore.scons: Ditto.
627 * WebCore.vcproj/WebCore.vcproj: Ditto.
628 * WebCore.xcodeproj/project.pbxproj: Ditto.
629 * WebCoreSources.bkl: Ditto.
630 * html/HTMLMediaElement.cpp: Changed to use ContentType.
631 (WebCore::HTMLMediaElement::selectMediaURL):
632 * platform/ContentType.cpp: Added.
633 (WebCore::ContentType::ContentType):
634 (WebCore::ContentType::parameter):
635 (WebCore::ContentType::type):
636 * platform/ContentType.h: Added.
637 (WebCore::ContentType::raw):
638 * platform/MIMETypeRegistry.cpp:
639 * platform/MIMETypeRegistry.h:
640 * platform/graphics/MediaPlayer.cpp:
641 (WebCore::MediaPlayer::load):
642 * rendering/style/ContentData.h: Renamed ContentType to StyleContentType.
643 * rendering/style/RenderStyleConstants.h: Ditto.
646 2009-02-20 Holger Hans Peter Freyther <zecke@selfish.org>
648 Unreviewed build fix.
650 Use CString() instead of 0.
652 * platform/gtk/FileSystemGtk.cpp:
653 (WebCore::openTemporaryFile):
654 * platform/qt/FileSystemQt.cpp:
655 (WebCore::openTemporaryFile):
657 2009-02-20 Gustavo Noronha Silva <gns@gnome.org>
659 Reviewed by Holger Freyther.
661 When dealing with local files, use a path instead of an URI. GFile
662 has problems decoding URIs with percent signs on them.
664 * platform/network/soup/ResourceHandleSoup.cpp:
665 (WebCore::ResourceHandle::startGio):
667 2009-02-20 Gustavo Noronha Silva <gns@gnome.org>
669 Reviewed by Holger Freyther.
671 Protect the ResourceHandle instance from being destroyed by
672 didReceiveData inside the GIO readCallback call, so that
673 cancelling caused by scripts is handled correctly.
675 * platform/network/soup/ResourceHandleSoup.cpp:
676 (WebCore::readCallback):
678 2009-02-20 David Kilzer <ddkilzer@apple.com>
680 Make IconDatabaseNone.cpp compile with -Wunused and pass check-for-exit-time-destructors
682 Reviewed by Sam Weinig.
684 * loader/icon/IconDatabaseNone.cpp:
685 (WebCore::IconDatabase::defaultDatabaseFilename): Use DEFINE_STATIC_LOCAL().
686 (WebCore::IconDatabase::open): Commented out unused parameter.
687 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ditto.
688 (WebCore::IconDatabase::iconForPageURL): Ditto.
689 (WebCore::IconDatabase::iconURLForPageURL): Ditto.
690 (WebCore::IconDatabase::defaultIcon): Ditto.
691 (WebCore::IconDatabase::retainIconForPageURL): Ditto.
692 (WebCore::IconDatabase::releaseIconForPageURL): Ditto.
693 (WebCore::IconDatabase::setIconDataForIconURL): Ditto.
694 (WebCore::IconDatabase::setIconURLForPageURL): Ditto.
695 (WebCore::IconDatabase::setEnabled): Ditto.
696 (WebCore::IconDatabase::pageURLMappingCount): Added stub.
697 (WebCore::IconDatabase::retainedPageURLCount): Ditto.
698 (WebCore::IconDatabase::iconRecordCount): Ditto.
699 (WebCore::IconDatabase::iconRecordCountWithData): Ditto.
701 2009-02-20 David Kilzer <ddkilzer@apple.com>
703 Add comment to generated code when shadowing a built-in object
705 Reviewed by Sam Weinig.
707 * bindings/scripts/CodeGeneratorJS.pm: Added comment to
708 generated code output.
710 2009-02-20 Avi Drissman <avi@chromium.org>
712 Reviewed by Eric Seidel.
714 https://bugs.webkit.org/show_bug.cgi?id=24036
715 Keyboard events need disambiguation on the Linux platform too.
717 * platform/chromium/PlatformKeyboardEventChromium.cpp:
718 (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
720 2009-02-19 Darin Fisher <darin@chromium.org>
722 Reviewed by Eric Seidel.
724 https://bugs.webkit.org/show_bug.cgi?id=24046
726 Several improvements to CString:
727 1- Make it possible to initialize a CString from a CStringBuffer
728 2- Make it possible to get a CStringBuffer from a CString
729 3- Change CStringBuffer::data() to return a const pointer to ward off mutation
730 4- Remove unused releaseBuffer() methods.
731 5- Make CStringBuffer::create() private to force consumers to get a CStringBuffer from a CString.
733 * platform/text/CString.cpp:
734 (WebCore::CString::init):
735 (WebCore::CString::mutableData):
736 (WebCore::CString::newUninitialized):
737 (WebCore::CString::copyBufferIfNeeded):
738 * platform/text/CString.h:
739 (WebCore::CStringBuffer::data):
740 (WebCore::CStringBuffer::length):
741 (WebCore::CStringBuffer::create):
742 (WebCore::CStringBuffer::mutableData):
743 (WebCore::CString::CString):
744 (WebCore::CString::buffer):
746 2009-02-19 Dmitry Titov <dimich@chromium.org>
748 Reviewed by Alexey Proskuryakov.
750 https://bugs.webkit.org/show_bug.cgi?id=24017
751 Remove some usage of Document in Worker.
753 * dom/WorkerContext.h:
754 (WebCore::WorkerContext::userAgent):
756 (WebCore::Document::userAgent):
758 * dom/ScriptExecutionContext.h:
759 Added virtual ScriptExecutionContext::userAgent(const KURL&).
760 Document implementation uses FrameLoader::userAgent and
761 WorkerContext receives the string on creation and stores it in a member.
764 (WebCore::Worker::Worker):
765 (WebCore::Worker::notifyFinished):
767 (WebCore::Worker::create):
768 Instead of Document the Worker constructor now gets a ScriptExecutionContext.
769 Start using some methods on SEC (like completeURL() and userAgent()).
770 For others, explicitly case to Document and add a FIXME.
771 Remove Worker::document() too.
773 2009-02-20 Gustavo Noronha Silva <gns@gnome.org>
775 Rubber-stamped by Holger Freyther.
777 Do not set httpStatus to SOUP_STATUS_OK when serving local files
778 to match other ports' behavior, fixing xmlhttprequest test
781 * platform/network/soup/ResourceHandleSoup.cpp:
782 (WebCore::queryInfoCallback):
784 2009-02-19 Dan Bernstein <mitz@apple.com>
786 Reviewed by Sam Weinig.
788 - WebCore part of fixing https://bugs.webkit.org/show_bug.cgi?id=24027
789 Do not send loader callbacks during CSS styling
791 Undo the iChat-specific quirk added in
792 <http://trac.webkit.org/changeset/41071>. Instead, always suspend memory
793 cache client callbacks during attach() and recalcStyle().
795 * WebCore.base.exp: Removed
796 Settings::setNeedsIChatMemoryCacheCallsQuirk().
797 * dom/ContainerNode.cpp:
798 (WebCore::ContainerNode::suspendPostAttachCallbacks): Disable memory
799 cache client callbacks and remember to enable them afterwards if needed.
800 (WebCore::ContainerNode::resumePostAttachCallbacks): Re-enable memory
801 cache client callbacks if they were disabled in
802 suspendPostAttachCallbacks().
803 (WebCore::ContainerNode::attach): Use suspendPostAttachCallbacks() and
804 resumePostAttachCallbacks().
805 * dom/ContainerNode.h: Made suspendPostAttachCallbacks()
806 and resumePostAttachCallbacks() non-static.
808 (WebCore::Document::dispatchImageLoadEventsNow): Reverted iChat-specific
810 * page/Settings.cpp: Removed m_needsIChatMemoryCacheCallsQuirk and
812 (WebCore::Settings::Settings):
815 2009-02-19 Holger Hans Peter Freyther <zecke@selfish.org>
817 Unreviewed build fix.
819 Build fix after r41092. Make the memoryUsage method
820 public. It will be shadowed by cf/mac and for curl/soup/qt
821 the implementation from ResourceResponseBase will be used.
823 * platform/network/ResourceResponseBase.h:
824 (WebCore::ResourceResponseBase::memoryUsage):
826 2009-02-19 Beth Dakin <bdakin@apple.com>
828 Reviewed by Dave Hyatt.
830 Fix for <rdar://problem/6077775> Should be able to specify
831 inactive ::selection color
833 This patch makes the ::selction pseudo-element work with
834 the :window-inactive pseudo type. This was, a user can specify a
835 different ::selection style when a window is inactive.
837 * css/CSSStyleSelector.cpp:
838 (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
839 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
840 * rendering/RenderObject.cpp:
841 (WebCore::RenderObject::selectionBackgroundColor):
842 (WebCore::RenderObject::selectionForegroundColor):
844 2009-02-19 Sam Weinig <sam@webkit.org>
846 Reviewed by Beth Dakin.
848 Patch for https://bugs.webkit.org/show_bug.cgi?id=24044
849 Update querySelector/querySelectorAll to match the latest spec
851 Update querySelector and querySelectorAll to match the latest version
852 of the Selectors API spec. We now stringify null and undefined to "null"
853 and "undefined" respectively instead of to "".
855 Test: fast/dom/SelectorAPI/undefined-null-stringify.html
858 * dom/DocumentFragment.idl:
861 2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
863 Reviewed by Geoffrey Garen.
865 https://bugs.webkit.org/show_bug.cgi?id=23732
866 Rework CachedResource overhead accounting to allow platforms to diverge
869 * loader/CachedResource.cpp:
870 (WebCore::CachedResource::overheadSize): Changed to ask ResourceResponse
871 for its size and to use actual URL size.
872 * platform/network/ResourceResponseBase.h:
873 (WebCore::ResourceResponseBase::size): Added default size method.
874 * platform/network/cf/ResourceResponse.h:
875 (WebCore::ResourceResponse::size): Added Win/CF size method
876 * platform/network/mac/ResourceResponse.h:
877 (WebCore::ResourceResponse::size): Added Mac size method.
879 2009-02-19 Anders Carlsson <andersca@apple.com>
881 Reviewed by Kevin Decker.
883 - Fix for <rdar://problem/6604968>
885 On Tiger, create an autorelease pool before creating the NSGraphicsContext and drain it immediately
886 after the call to -[NSView displayRectIgnoringOpacity:inContext:].
888 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
889 (WebCore::MediaPlayerPrivate::paint):
891 2009-02-19 David Hyatt <hyatt@apple.com>
893 Fix a bug where reflections didn't work properly if opacity was < 1. Make sure that replaced elements
894 also consider reflections to be part of their visual overflow. This had already been done for blocks
895 and lines, but it wasn't being done yet for replaced elements.
897 Also make sure that when the object being reflected has opacity < 1 that we don't end up popping the outer
898 transparency layer early. Since the reflected object paints twice, we don't want to end the transparency
899 layer it pushed until we're done painting the real object (rather than the reflection).
901 Reviewed by Dan Bernstein
903 Added fast/reflections/reflection-masks-opacity.html
905 * rendering/RenderLayer.cpp:
906 (WebCore::RenderLayer::paintLayer):
907 * rendering/RenderPartObject.cpp:
908 (WebCore::RenderPartObject::layout):
909 * rendering/RenderReplaced.cpp:
910 (WebCore::RenderReplaced::layout):
911 (WebCore::RenderReplaced::adjustOverflowForBoxShadowAndReflect):
912 * rendering/RenderReplaced.h:
914 2009-02-19 David Levin <levin@chromium.org>
916 Reviewed by Alexey Proskuryakov.
918 Bug 23980: WorkerRunLoop needs a way to run in a given mode similar to CFRunLoopInMode.
919 <https://bugs.webkit.org/show_bug.cgi?id=23980>
921 WorkerRunLoop has the ability to run in a mode which filters the tasks to be run.
922 * When WorkerRunLoop::runInMode is called, only task for that mode will run.
923 * When WorkerRunLoop::run is called (or the default mode is used), then all tasks
924 will run regardless of their posted mode.
926 Here's a demonstration of the api:
928 RefPtr<NameResolution> nameResolution = NameResolution::create(workerRunLoop);
930 // Internally nameResolution will do workerRunLoop.postTaskForMode(task, "MyCoolMode")
931 // for any tasks that need to be run during this loop.
932 nameResolution->setTaskMode("MyCoolMode");
934 nameResolution->start();
935 while (!nameResolution->done()) {
936 // Only tasks which are posted for "MyCoolMode" will run.
937 workerRunLoop.runInMode(context, "MyCoolMode");
940 No observable change in behavior, so no test.
942 * dom/WorkerRunLoop.cpp:
943 (WebCore::ModePredicate::ModePredicate):
944 (WebCore::ModePredicate::operator()):
945 (WebCore::WorkerRunLoop::WorkerRunLoop):
946 (WebCore::WorkerRunLoop::~WorkerRunLoop):
947 (WebCore::WorkerRunLoop::setSharedTimer):
948 (WebCore::WorkerRunLoop::resetSharedTimer):
949 (WebCore::WorkerRunLoop::run):
950 (WebCore::WorkerRunLoop::runInMode):
951 (WebCore::WorkerRunLoop::postTask):
952 (WebCore::WorkerRunLoop::postTaskForMode):
953 * dom/WorkerRunLoop.h:
954 (WebCore::WorkerRunLoop::Task::create):
955 (WebCore::WorkerRunLoop::Task::mode):
956 (WebCore::WorkerRunLoop::Task::performTask):
957 (WebCore::WorkerRunLoop::Task::Task):
959 2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
961 Reviewed by Eric Seidel.
963 https://bugs.webkit.org/show_bug.cgi?id=24034
964 Fix up Selection->VisibleSelection change.
966 * page/chromium/EventHandlerChromium.cpp:
967 (WebCore::EventHandler::passMousePressEventToSubframe): Renamed Selection
970 2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
972 Reviewed by Eric Seidel.
974 https://bugs.webkit.org/show_bug.cgi?id=24041
975 Correct Skia type conversion issues, fix Chromium Linux build.
977 * platform/graphics/chromium/FontLinux.cpp:
978 (WebCore::Font::drawGlyphs): changed parameters to RGBA32, not WebCore::Color.
980 2009-02-19 Jungshik Shin <jshin@chromium.org>
982 Reviewed by Eric Seidel.
984 https://bugs.webkit.org/show_bug.cgi?id=20531
985 Chromium-part follow-up to the patch landed in r40636
987 Remove a static member function alternateFamilyName
988 from Chromium's Win/Linux ports of FontCache. In r40636,
989 alternateFamilyName was customized using #ifdef PLATFORM(WIN_OS).
990 So, there's no more need for the static member function per
993 * platform/graphics/chromium/FontCacheChromiumWin.cpp:
994 * platform/graphics/chromium/FontCacheLinux.cpp:
996 2009-02-19 Simon Fraser <simon.fraser@apple.com>
998 Reviewed by Adele Peterson.
1000 Call documentWillBecomeInactive() from Document::detach to ensure that
1001 media elements are shut down, because they may be kept alive by references
1002 from JS past document teardown.
1004 documentWillBecomeInactive() calls renderView()->willMoveOffscreen(), so no
1005 need to do that in detach() as well.
1007 We no longer need to call documentWillBecomeInactive() from ~Page() (which
1008 was added for <https://bugs.webkit.org/show_bug.cgi?id=21116>), since this
1009 supersedes that change.
1012 (WebCore::Document::detach):
1014 (WebCore::Page::~Page):
1016 2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
1018 Reviewed by Eric Seidel.
1020 https://bugs.webkit.org/show_bug.cgi?id=24028
1021 Fix up Skia path changes.
1023 * platform/graphics/skia/GraphicsContextSkia.cpp:
1024 (WebCore::GraphicsContext::strokePath): Removed illegal indirection.
1025 * platform/graphics/skia/PathSkia.cpp:
1026 (WebCore::boundingBoxForCurrentStroke): Changed call name.
1028 2009-02-19 Gustavo Noronha Silva <gns@gnome.org>
1030 Reviewed by Alexey Proskuryakov.
1032 Ignore ports on local URLs. This fixes a regression in
1033 fast/loader/file-URL-with-port-number.html
1035 * platform/network/soup/ResourceHandleSoup.cpp:
1036 (WebCore::ResourceHandle::startGio):
1038 2009-02-19 Gustavo Noronha Silva <gns@gnome.org>
1040 Reviewed by Alexey Proskuryakov.
1042 https://bugs.webkit.org/show_bug.cgi?id=24011
1043 KURL's setPort doesn't unset port if 0 is given
1045 Make setPort remove port if 0 is given to it, as promised by the
1046 comment in KURL's header.
1048 * platform/KURL.cpp:
1049 (WebCore::KURL::setPort):
1051 2009-02-18 Dan Bernstein <mitz@apple.com>
1053 Reviewed by Brady Eidson.
1055 - WebCore part of fixing <rdar://problem/6507512> Crash in iChat at CSSStyleSelector::adjustRenderStyle
1057 The crash results from re-entry into
1058 CSSMutableStyleDeclaration::setCssText, which in turn is caused by
1059 the first style change causing a cached image to load from the memory
1060 cache, causing load delegate dispatch, and iChat's delegate method
1061 calling back into WebKit.
1063 The workaround is to use defer delegate callbacks for memory cache. In
1064 this case, deferring callbacks during image load event dispatch was
1065 found to be sufficient.
1067 The crash is a regression. See also the discussion in
1068 <https://bugs.webkit.org/show_bug.cgi?id=22521>.
1070 * WebCore.base.exp: Added
1071 Settings::setNeedsIChatMemoryCacheCallsQuirk().
1073 (WebCore::Document::dispatchImageLoadEventsNow): If the quirk is
1074 enabled, defer memory cache callbacks during image load event dispatch.
1075 * page/Settings.cpp:
1076 (WebCore::Settings::Settings): Initialize
1077 m_needsIChatMemoryCacheCallsQuirk.
1078 (WebCore::Settings::setNeedsIChatMemoryCacheCallsQuirk): Added this
1081 (WebCore::Settings::needsIChatMemoryCacheCallsQuirk): Added this getter.
1083 2009-02-18 Adam Roben <aroben@apple.com>
1085 Export WebCore::handCursor and Cursor.h
1087 Reviewed by John Sullivan.
1089 * WebCore.base.exp: Added WebCore::handCursor.
1090 * WebCore.xcodeproj/project.pbxproj: Made Cursor.h private.
1092 2009-02-18 Ojan Vafai <ojan@chromium.org>
1094 Reviewed by Alexey Proskuryakov.
1096 https://bugs.webkit.org/show_bug.cgi?id=23992
1097 REGRESSION: crash on windows loading http://www.stickam.com/liveStreams.do
1099 Unable to reduce to a layout test.
1102 (WebCore::Frame::contentRenderer):
1104 2009-02-18 Evan Stade <estade@chromium.org>
1106 Reviewed by Eric Seidel.
1108 https://bugs.webkit.org/show_bug.cgi?id=23861
1109 Stroke font outlines on chromium linux
1111 TEST=LayoutTests/svg/custom/pointer-events-text.svg
1113 * platform/graphics/chromium/FontLinux.cpp:
1114 (WebCore::Font::drawGlyphs):
1116 2009-02-18 Evan Stade <estade@chromium.org>
1118 Reviewed by Eric Seidel.
1120 https://bugs.webkit.org/show_bug.cgi?id=23860
1121 Resync some graphics/skia files with their chromium counterparts
1123 This comes from chromium patches <http://codereview.chromium.org/17633>
1124 and <http://codereview.chromium.org/17454>
1126 * platform/graphics/skia/GraphicsContextSkia.cpp:
1127 (WebCore::GraphicsContext::clipPath):
1128 (WebCore::GraphicsContext::fillPath):
1129 * platform/graphics/skia/PlatformContextSkia.cpp:
1130 (PlatformContextSkia::addPath):
1131 (PlatformContextSkia::currentPath):
1132 * platform/graphics/skia/PlatformContextSkia.h:
1134 2009-02-18 Gustavo Noronha Silva <gns@gnome.org>
1138 Build fix after r41060.
1142 2009-02-18 Dimitri Glazkov <dglazkov@chromium.org>
1144 Reviewed by Eric Seidel.
1146 https://bugs.webkit.org/show_bug.cgi?id=24005
1147 Add an include to fix Chromium build.
1149 * page/animation/AnimationController.cpp: Add UnusedParam.h include.
1151 2009-02-18 Gustavo Noronha Silva <gns@gnome.org>
1153 Reviewed by Holger Freyther.
1155 Fix symbols.filter location, and add other missing files to the
1156 autotools build, so that make dist works.
1160 2009-02-18 Zan Dobersek <zandobersek@gmail.com>
1162 Rubber-stamped by Holger Hans Peter Freyther.
1164 Allow POST method for local requests.
1166 * platform/network/soup/ResourceHandleSoup.cpp:
1167 (WebCore::ResourceHandle::startGio):
1169 2009-02-18 Gustavo Noronha Silva <gns@gnome.org>
1171 Reviewed by Holger Hans Peter Freyther.
1173 Use KURL in startGio instead of passing a string with the URL, so
1174 that we can handle removing refs and queries more elegantly. This
1175 is fixing more regressions that came from the curl->soup switch.
1177 Original work by Zan Dobersek.
1179 * platform/network/ResourceHandle.h:
1180 * platform/network/soup/ResourceHandleSoup.cpp:
1181 (WebCore::ResourceHandle::start):
1182 (WebCore::ResourceHandle::startGio):
1184 2009-02-18 Holger Hans Peter Freyther <zecke@selfish.org>
1186 Reviewed by Alexey Proskuryakov.
1188 Implement ResourceHandle::loadResourceSynchronously in ResourceHandleSoup.cpp
1190 The implementation is needed to have synchronous loading, e.g. for
1191 JavaScript interaction. This is fixing various regressions that
1192 came from the curl->soup switch.
1194 * platform/network/soup/ResourceHandleSoup.cpp:
1195 (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
1196 (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader):
1197 (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
1198 (WebCore::WebCoreSynchronousLoader::didReceiveData):
1199 (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1200 (WebCore::WebCoreSynchronousLoader::didFail):
1201 (WebCore::WebCoreSynchronousLoader::run):
1202 (WebCore::ResourceHandle::loadResourceSynchronously):
1204 2009-02-18 Xan Lopez <xan@gnome.org>
1206 Reviewed by Mark Rowe.
1208 https://bugs.webkit.org/show_bug.cgi?id=23989
1210 Based on a patch by Bo Yang <techrazy.yang@gmail.com>
1212 Make the cursor cache global, that's all we really need and
1213 otherwise we can miss cursor transitions in some situations (see
1214 the bug for one testcase). Also remove some now useless code.
1216 * platform/Widget.h:
1217 * platform/gtk/WidgetGtk.cpp:
1218 (WebCore::Widget::Widget):
1219 (WebCore::Widget::~Widget):
1220 (WebCore::Widget::setCursor):
1222 2009-02-17 Adam Roben <aroben@apple.com>
1226 * loader/FrameLoader.cpp:
1227 (WebCore::toPlugInElement): Don't rely on #if being processed before
1230 2009-02-17 David Levin <levin@chromium.org>
1232 Reviewed by Alexey Proskuryakov.
1234 Bug 23977: Unnecessary timer related headers in files.
1235 <https://bugs.webkit.org/show_bug.cgi?id=23977>
1237 No observable change in behavior, so no test.
1240 * dom/WorkerRunLoop.cpp:
1241 * dom/WorkerRunLoop.h:
1243 2009-02-17 Peter Abrahamsen <rainhead@gmail.com>
1245 Reviewed by Sam Weinig.
1247 https://bugs.webkit.org/show_bug.cgi?id=23958
1248 <rdar://problem/6587815>
1250 Updated XMLHttpRequest with new header names from the latest Access
1251 Control draft: http://www.w3.org/TR/access-control/
1252 - Access-Control-Origin becomes Access-Control-Allow-Origin
1253 - Access-Control-Credentials becomes Access-Control-Allow-Credentials
1255 * xml/XMLHttpRequest.cpp:
1256 (WebCore::XMLHttpRequest::accessControlCheck):
1258 2009-02-17 Kevin Ollivier <kevino@theolliviers.com>
1260 wx build fix. Add missing constructor used for empty values.
1262 * platform/graphics/wx/FontPlatformData.h:
1263 (WebCore::FontPlatformData::FontPlatformData):
1265 2009-02-17 Antti Koivisto <antti@apple.com>
1267 Reviewed by Dave Kilzer.
1269 <rdar://problem/6592446> dynamically updating page doesn't seem to draw when updated
1271 Need update after callback.
1273 * bindings/js/JSCustomPositionCallback.cpp:
1274 (WebCore::JSCustomPositionCallback::handleEvent):
1275 * bindings/js/JSCustomPositionErrorCallback.cpp:
1276 (WebCore::JSCustomPositionErrorCallback::handleEvent):
1278 2009-02-17 Eric Carlson <eric.carlson@apple.com>
1280 Reviewed by Antti Koivisto.
1282 https://bugs.webkit.org/show_bug.cgi?id=23917
1283 Allow a WebKit plug-in to act as a proxy for the <audio> and <video>
1286 * DerivedSources.make: add media element proxy exports to .exp file when feature is defined.
1288 * WebCore.VideoProxy.exp: New, define the informal protocol exported by a media element proxy.
1290 * WebCore.xcodeproj/project.pbxproj: Add MediaPlayerProxy.h.
1292 * html/HTMLMediaElement.cpp:
1293 (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_needWidgetUpdate.
1294 (WebCore::HTMLMediaElement::attributeChanged): Don't detach+attach when PLUGIN_PROXY_FOR_VIDEO, the
1295 proxy plug-in handles the poster frame.
1296 (WebCore::HTMLMediaElement::rendererIsNeeded): New logic for PLUGIN_PROXY_FOR_VIDEO.
1297 (WebCore::HTMLMediaElement::createRenderer): Create RenderPartObject when PLUGIN_PROXY_FOR_VIDEO.
1298 (WebCore::HTMLMediaElement::attach): Set m_needWidgetUpdate when PLUGIN_PROXY_FOR_VIDEO
1299 (WebCore::HTMLMediaElement::load): Don't reallocate MediaPlayer when PLUGIN_PROXY_FOR_VIDEO, we keep the
1300 same plug-in for the life of the element.
1301 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): update m_networkState when media player
1302 network state changes to EMPTY, otherwise we can get out of sync with engine.
1303 (WebCore::HTMLMediaElement::defaultEventHandler): pass event to widget when PLUGIN_PROXY_FOR_VIDEO
1304 (WebCore::HTMLMediaElement::deliverNotification): New, deliver notification from proxy plug-in to
1306 (WebCore::HTMLMediaElement::setMediaPlayerProxy): New, pass proxy object to media player.
1307 (WebCore::HTMLMediaElement::initialURL): New, return the url from the "src" attr or the appropriate
1308 <source> element to be used as the initial url for the proxy.
1309 (WebCore::HTMLMediaElement::finishParsingChildren): New, allocate MediaPlayer and update widget.
1310 * html/HTMLMediaElement.h: Declare new methods for proxy, add m_needWidgetUpdate.
1311 (WebCore::HTMLMediaElement::setNeedWidgetUpdate):
1313 * html/HTMLVideoElement.cpp:
1314 (WebCore::HTMLVideoElement::attach): Poster image is handled by proxy when PLUGIN_PROXY_FOR_VIDEO.
1315 (WebCore::HTMLVideoElement::parseMappedAttribute): Ditto.
1316 * html/HTMLVideoElement.h:
1318 * loader/FrameLoader.cpp:
1319 (WebCore::toPlugInElement): Allow cast if element is <video> or <audio>
1321 * platform/graphics/MediaPlayer.cpp:
1322 (WebCore::MediaPlayer::MediaPlayer): Remove white space.
1323 (WebCore::MediaPlayer::setPoster): New, forward call to private player.
1324 (WebCore::MediaPlayer::deliverNotification): Ditto.
1325 (WebCore::MediaPlayer::setMediaPlayerProxy): Ditto.
1326 * platform/graphics/MediaPlayer.h:
1327 (WebCore::MediaPlayer::mediaPlayerClient):
1329 * platform/graphics/mac/MediaPlayerProxy.h: New, defines media player proxy interface.
1331 * rendering/RenderPart.cpp:
1332 (WebCore::RenderPart::RenderPart): Change constructor to take Element* instead of Node* as a
1333 non-element node doesn't need a renderer
1334 * rendering/RenderPart.h: Ditto.
1336 * rendering/RenderPartObject.cpp:
1337 (WebCore::RenderPartObject::RenderPartObject): Ditto.
1338 (WebCore::RenderPartObject::updateWidget): Package params for proxy plug-in when element is
1340 * rendering/RenderPartObject.h:
1342 2009-02-17 David Hyatt <hyatt@apple.com>
1344 Reviewed by Eric Seidel
1346 Fix for https://bugs.webkit.org/show_bug.cgi?id=23985
1348 Don't allow legends to be anything but display:block.
1350 Added fast/forms/inline-ignored-on-legend.html
1354 * WebCore.vcproj/WebCore.vcproj:
1355 * WebCore.xcodeproj/project.pbxproj:
1356 * WebCoreSources.bkl:
1358 * html/HTMLLegendElement.cpp:
1359 * html/HTMLLegendElement.h:
1360 * rendering/RenderLegend.cpp: Removed.
1361 * rendering/RenderLegend.h: Removed.
1362 * wml/WMLInsertedLegendElement.cpp:
1363 * wml/WMLInsertedLegendElement.h:
1365 2009-02-13 Brett Wilson <brettw@dhcp-172-22-71-167.mtv.corp.google.com>
1367 Reviewed by Simon Fraser.
1369 https://bugs.webkit.org/attachment.cgi?id=27666
1370 Fix Chromium build build: forgotten include in RenderObject, sync
1371 RenderTheme to the recent changes in RenderObject.
1373 * rendering/RenderObject.cpp:
1374 * rendering/RenderThemeChromiumMac.mm:
1375 (WebCore::RenderThemeChromiumMac::updatePressedState):
1377 2009-02-17 Gustavo Noronha Silva <gns@gnome.org>
1379 Reviewed by Darin Adler.
1381 https://bugs.webkit.org/show_bug.cgi?id=22966
1382 crash when destroying a webview that opened a page containing <script>
1385 Fix m_group being set to 0 instead of to m_singlePageGroup when
1386 GroupName is set to empty
1389 (WebCore::Page::setGroupName):
1391 2009-02-16 Beth Dakin <bdakin@apple.com>
1393 Reviewed by Sam Weinig.
1395 Fix for <rdar://problem/6386623>
1397 I made m_numParsedProperties and m_maxParsedProperties unsigned
1398 instead of int, and then added an early return from addPropery() if
1399 m_maxParsedProperties exceeds the max value.
1401 * css/CSSParser.cpp:
1402 (WebCore::CSSParser::addProperty):
1403 (WebCore::CSSParser::rollbackLastProperties):
1404 (WebCore::CSSParser::clearProperties):
1405 (WebCore::CSSParser::createFontFaceRule):
1406 (WebCore::CSSParser::deleteFontFaceOnlyValues):
1409 2009-02-16 Justin Garcia <justin.garcia@apple.com>
1411 Reviewed by Mark Rowe.
1413 https://bugs.webkit.org/show_bug.cgi?id=16309
1414 HTML5: The third execCommand argument for insert{un}orderedlist should be ignored
1416 When we originally implemented this command, MSDN documentation said that IE set the
1417 id attribute of inserted lists to the third argument to execCommand, but IE doesn't
1418 do this nor do any other browsers.
1420 * editing/EditorCommand.cpp:
1421 (WebCore::executeInsertOrderedList):
1422 (WebCore::executeInsertUnorderedList):
1423 * editing/IndentOutdentCommand.cpp:
1424 (WebCore::IndentOutdentCommand::outdentParagraph):
1425 * editing/InsertListCommand.cpp:
1426 (WebCore::InsertListCommand::insertList):
1427 (WebCore::InsertListCommand::InsertListCommand):
1428 (WebCore::InsertListCommand::doApply):
1429 * editing/InsertListCommand.h:
1430 (WebCore::InsertListCommand::create):
1432 2009-02-16 Dan Bernstein <mitz@apple.com>
1434 Reviewed by Geoffrey Garen.
1436 - fix <rdar://problem/6561077> REGRESSION (r39634): Unable to select an item in stocks widget with the mouse
1438 Test: platform/mac/fast/events/pointer-events-dashboard.html
1440 * css/CSSStyleSelector.cpp:
1441 (WebCore::CSSStyleSelector::applyProperty): Do not apply the
1442 pointer-events property in Dashboard backwards compatibility mode,
1443 in order to work around misuse of that property by the Stocks widget.
1445 2009-02-16 Justin Garcia <justin.garcia@apple.com>
1447 Reviewed by Eric Seidel.
1449 https://bugs.webkit.org/show_bug.cgi?id=15381
1450 execCommand justify modifies the contentEditable node
1452 * editing/CompositeEditCommand.cpp:
1453 (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): Avoid modifying not just
1454 the body element, but any root editable element.
1456 2009-02-16 Chris Fleizach <cfleizach@apple.com>
1458 Reviewed by Adele Peterson.
1460 Bug 23979: AX: alt tag not returned for <input type="image">
1461 https://bugs.webkit.org/show_bug.cgi?id=23979
1463 Test: accessibility/input-image-alt.html
1465 * page/AccessibilityRenderObject.cpp:
1466 (WebCore::AccessibilityRenderObject::accessibilityDescription):
1468 2009-02-16 Kevin Watters <kevinwatters@gmail.com>
1470 Reviewed by Kevin Ollivier.
1472 The ref data is not properly set unless we use the CreateMatrix function.
1474 https://bugs.webkit.org/show_bug.cgi?id=23978
1476 * platform/graphics/wx/TransformationMatrixWx.cpp:
1477 (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
1479 2009-02-16 Dan Bernstein <mitz@apple.com>
1481 Reviewed by John Sullivan.
1483 - fix <rdar://problem/6516829> FontPlatformData constructor passes NULL to CTFontCopyGraphicsFont and CTFontGetPlatformFont
1485 * platform/graphics/FontCache.cpp:
1486 (WebCore::FontDataCacheKeyTraits::emptyValue): Changed to use the
1487 FontPlatformData(float, bool, bool) constructor.
1488 * platform/graphics/mac/FontCacheMac.mm:
1489 (WebCore::FontCache::createFontPlatformData): Changed to pass a valid
1490 NSFont to the FontPlatformData constructor, instead of implicitly
1491 passing 0 and then calling setFont().
1492 * platform/graphics/mac/FontPlatformData.h: Made the NSFont parameter
1493 of the constructor mandatory.
1495 2009-02-15 David Kilzer <ddkilzer@apple.com>
1497 Move duplicate caretWidth constants to RenderObject.h
1499 Reviewed by Dan Bernstein.
1501 No test since no change in behavior.
1503 * rendering/RenderBlock.cpp:
1504 (WebCore::RenderBlock::localCaretRect): Removed caretWidth.
1505 * rendering/RenderBox.cpp:
1506 (WebCore::RenderBox::localCaretRect): Ditto.
1507 * rendering/RenderObject.h: Added caretWidth definition.
1508 * rendering/RenderText.cpp:
1509 (WebCore::RenderText::localCaretRect): Removed caretWidth.
1511 2009-02-13 Dimitri Glazkov <dglazkov@chromium.org>
1513 Reviewed by Eric Seidel.
1515 https://bugs.webkit.org/show_bug.cgi?id=23955
1516 V8HTMLPlugInCustom returns undefined, which fools interceptors.
1518 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
1519 (WebCore::NAMED_PROPERTY_GETTER): Use deferToInterceptor() return value.
1520 (WebCore::NAMED_PROPERTY_SETTER): Ditto.
1521 (WebCore::INDEXED_PROPERTY_GETTER): Ditto.
1522 (WebCore::INDEXED_PROPERTY_SETTER): Ditto.
1524 2009-02-13 Dimitri Glazkov <dglazkov@chromium.org>
1526 Reviewed by Eric Seidel.
1528 https://bugs.webkit.org/show_bug.cgi?id=23954
1529 Add V8 custom bindings for CanvasRenderingContext2D.
1531 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: Added.
1533 (WebCore::toCanvasStyle):
1534 (WebCore::ACCESSOR_GETTER):
1535 (WebCore::ACCESSOR_SETTER):
1537 2009-02-13 Anders Carlsson <andersca@apple.com>
1539 Reviewed by Darin Adler and Dan Bernstein.
1541 <rdar://problem/6583187>
1543 * page/NavigatorBase.cpp:
1544 Handle PPC64 and X86_64 as well.
1546 2009-02-13 Darin Adler <darin@apple.com>
1548 Reviewed by Mark Rowe.
1550 Fix broken tokenizer regression test that reflected a lifetime bug
1551 in the document.write optimization. The test failure was trivial to
1552 reproduce in COLLECT_ON_EVERY_ALLOCATION mode.
1554 * bindings/js/JSHTMLDocumentCustom.cpp:
1555 (WebCore::documentWrite): Convert strings to String rather than passing
1556 the pointer and length to SegmentedString. The optimization is thus
1557 mostly gone. However, there are two ways to bring it back: 1) Apply
1558 the patch that makes UString and String share the same buffers.
1559 2) Add a UString feature to SegmentedString; simple to do but might
1560 risk slowing down normal document parsing.
1562 2009-02-13 Adam Treat <adam.treat@torchmobile.com>
1564 Caught by Darin Adler.
1566 No reason to check m_tokenizer twice for 0 in a row.
1569 (WebCore::Document::write):
1571 2009-02-13 Lyon Chen <lyon.chen@torchmobile.com>
1573 Reviewed by Dave Hyatt.
1575 Take into account y() + height() when calculating getLowerRightCorner.
1577 * dom/ContainerNode.cpp:
1578 (WebCore::ContainerNode::getLowerRightCorner):
1580 2009-02-13 Antti Koivisto <antti@apple.com>
1582 Reviewed by Dave Hyatt.
1584 Most of this code was in RenderBox, restore the copyright lines.
1586 * rendering/RenderBoxModelObject.cpp:
1587 * rendering/RenderBoxModelObject.h:
1589 2009-02-13 David Hyatt <hyatt@apple.com>
1591 Get rid of printBoxDecorations, since it is dead code.
1593 Reviewed by Dan Bernstein
1595 * rendering/RenderObject.h:
1597 2009-02-13 Adam Treat <adam.treat@torchmobile.com>
1599 Reviewed by Darin Adler.
1601 https://bugs.webkit.org/show_bug.cgi?id=23952
1602 Add Document::write overload which takes a SegmentedString since this
1603 is what the tokenizer expects anyway. Modified JSHTMLDocument so it once
1604 again calls Document::write instead of injecting the string directly into
1605 the tokenizer. This ensures that all document.write's are funneled through
1606 one method again, but should still be just as fast for JSHTMLDocumentCustom.
1608 * bindings/js/JSHTMLDocumentCustom.cpp:
1609 (WebCore::documentWrite):
1611 (WebCore::Document::write):
1614 2009-02-13 David Hyatt <hyatt@apple.com>
1616 Reviewed by Simon Fraser
1618 Remove updateWidgetPosition on RenderObject. Change RenderView's set of widgets
1619 to have a tighter type: RenderWidget instead of RenderObject. Devirtualize
1620 updateWidgetPosition, since all RenderWidgets (except for applets) are now
1623 * rendering/RenderObject.cpp:
1624 * rendering/RenderObject.h:
1625 * rendering/RenderPart.cpp:
1626 * rendering/RenderPart.h:
1627 * rendering/RenderView.cpp:
1628 (WebCore::RenderView::updateWidgetPositions):
1629 (WebCore::RenderView::addWidget):
1630 (WebCore::RenderView::removeWidget):
1631 * rendering/RenderView.h:
1632 * rendering/RenderWidget.cpp:
1633 (WebCore::RenderWidget::updateWidgetPosition):
1634 * rendering/RenderWidget.h:
1636 2009-02-13 David Hyatt <hyatt@apple.com>
1638 Reviewed by Eric Seidel
1640 Remove isEditable() on RenderObject. It is dead code.
1642 * rendering/RenderObject.cpp:
1643 * rendering/RenderObject.h:
1645 2009-02-13 David Hyatt <hyatt@apple.com>
1647 Reviewed by Eric Seidel
1649 Add isTextControl() to RenderObject. Patch call sites thats asked isTextField() || isTextArea() to just use
1650 isTextControl() instead.
1652 Add a toRenderTextControl converter for doing checked casting to RenderTextControls.
1655 (WebCore::Document::setFocusedNode):
1656 * dom/InputElement.cpp:
1657 (WebCore::InputElement::updateSelectionRange):
1658 * editing/ReplaceSelectionCommand.cpp:
1659 (WebCore::ReplacementFragment::ReplacementFragment):
1660 * editing/TextIterator.cpp:
1661 (WebCore::TextIterator::handleReplacedElement):
1662 * html/HTMLInputElement.cpp:
1663 (WebCore::HTMLInputElement::selectionStart):
1664 (WebCore::HTMLInputElement::selectionEnd):
1665 (WebCore::HTMLInputElement::setSelectionStart):
1666 (WebCore::HTMLInputElement::setSelectionEnd):
1667 (WebCore::HTMLInputElement::select):
1668 (WebCore::HTMLInputElement::defaultEventHandler):
1669 (WebCore::HTMLInputElement::selection):
1670 * html/HTMLTextAreaElement.cpp:
1671 (WebCore::HTMLTextAreaElement::selectionStart):
1672 (WebCore::HTMLTextAreaElement::selectionEnd):
1673 (WebCore::HTMLTextAreaElement::setSelectionStart):
1674 (WebCore::HTMLTextAreaElement::setSelectionEnd):
1675 (WebCore::HTMLTextAreaElement::select):
1676 (WebCore::HTMLTextAreaElement::setSelectionRange):
1677 (WebCore::HTMLTextAreaElement::appendFormData):
1678 (WebCore::HTMLTextAreaElement::updateValue):
1679 (WebCore::HTMLTextAreaElement::selection):
1680 * page/AccessibilityRenderObject.cpp:
1681 (WebCore::AccessibilityRenderObject::isNativeTextControl):
1682 (WebCore::AccessibilityRenderObject::text):
1683 (WebCore::AccessibilityRenderObject::selectedText):
1684 (WebCore::AccessibilityRenderObject::selectedTextRange):
1685 (WebCore::AccessibilityRenderObject::setSelectedTextRange):
1686 (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
1687 (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
1688 (WebCore::AccessibilityRenderObject::observableObject):
1690 (WebCore::Frame::notifyRendererOfSelectionChange):
1691 * rendering/RenderObject.h:
1692 (WebCore::RenderObject::isTextControl):
1693 (WebCore::objectIsRelayoutBoundary):
1694 * rendering/RenderTextControl.h:
1695 (WebCore::RenderTextControl::isTextControl):
1696 (WebCore::toRenderTextControl):
1697 * rendering/TextControlInnerElements.cpp:
1698 (WebCore::TextControlInnerTextElement::defaultEventHandler):
1699 * wml/WMLInputElement.cpp:
1700 (WebCore::WMLInputElement::select):
1701 (WebCore::WMLInputElement::defaultEventHandler):
1702 (WebCore::WMLInputElement::isConformedToInputMask):
1704 2009-02-13 David Hyatt <hyatt@apple.com>
1706 Get rid of isEdited/setEdited on RenderObject. Devirtualize isEdited/setEdited on RenderTextControl.
1707 Callers were already asking if the renderer was a text field (or a text area), so it was especially
1708 pointless to waste a second virtual function call after making one just to determine the object type.
1710 Reviewed by Simon Fraser
1713 (WebCore::Document::setFocusedNode):
1714 * html/HTMLInputElement.cpp:
1715 (WebCore::HTMLInputElement::defaultEventHandler):
1716 * rendering/RenderObject.h:
1717 * rendering/RenderTextControl.h:
1718 (WebCore::RenderTextControl::isEdited):
1719 (WebCore::RenderTextControl::setEdited):
1721 2009-02-13 Scott Violet <sky@google.com>
1723 Reviewed by Eric Seidel.
1725 https://bugs.webkit.org/show_bug.cgi?id=23934
1726 Skia platform doesn't render text decoration shadows.
1728 Makes Skia render text decoration shadows correctly. We weren't
1729 preparing the SkPaint correctly and didn't have a couple of checks
1730 CG has. Additionally makes the fillColor/strokeColor methods
1733 This behavior is covered by existing layout tests (see bug for list).
1735 * platform/graphics/chromium/FontChromiumWin.cpp:
1736 (WebCore::Font::drawGlyphs):
1737 (WebCore::Font::drawComplexText):
1738 * platform/graphics/skia/GraphicsContextSkia.cpp:
1739 (WebCore::GraphicsContext::drawLineForText):
1740 * platform/graphics/skia/PlatformContextSkia.cpp:
1741 (PlatformContextSkia::effectiveFillColor):
1742 (PlatformContextSkia::effectiveStrokeColor):
1743 * platform/graphics/skia/PlatformContextSkia.h:
1745 2009-02-12 Darin Fisher <darin@chromium.org>
1747 Reviewed by Eric Seidel.
1749 https://bugs.webkit.org/show_bug.cgi?id=23944
1750 KURLGoogle's pre-parsed canonicalSpec constructor should take a CString
1753 * platform/KURLGoogle.cpp:
1754 (WebCore::KURLGooglePrivate::setUtf8):
1755 (WebCore::KURLGooglePrivate::setAscii):
1756 (WebCore::KURLGooglePrivate::init):
1757 (WebCore::KURLGooglePrivate::replaceComponents):
1758 (WebCore::KURL::KURL):
1759 * platform/KURLGooglePrivate.h:
1761 2009-02-13 David Hyatt <hyatt@apple.com>
1763 Remove leftmost/rightmost/lowestPosition from RenderObject. They only need to be called on boxes.
1765 Reviewed by Dan Bernstein
1767 * rendering/RenderBlock.cpp:
1768 (WebCore::RenderBlock::lowestPosition):
1769 (WebCore::RenderBlock::rightmostPosition):
1770 (WebCore::RenderBlock::leftmostPosition):
1771 * rendering/RenderLayer.cpp:
1772 (WebCore::RenderLayer::computeScrollDimensions):
1773 * rendering/RenderMedia.cpp:
1774 (WebCore::RenderMedia::lowestPosition):
1775 (WebCore::RenderMedia::rightmostPosition):
1776 (WebCore::RenderMedia::leftmostPosition):
1777 * rendering/RenderObject.h:
1778 * rendering/RenderTableSection.cpp:
1779 (WebCore::RenderTableSection::lowestPosition):
1780 (WebCore::RenderTableSection::rightmostPosition):
1781 (WebCore::RenderTableSection::leftmostPosition):
1783 2009-02-12 Simon Fraser <simon.fraser@apple.com>
1785 Fix build with ACCELERATED_COMPOSITING turned on.
1787 toRenderBox()->x() asserts for a layer on an inline; use
1788 m_owningLayer->renderBoxX() instead.
1790 * rendering/RenderLayerBacking.cpp:
1791 (WebCore::RenderLayerBacking::paintIntoLayer):
1793 2009-02-12 Darin Adler <darin@apple.com>
1795 Reviewed by Oliver Hunt.
1797 Speed up document.write a bit.
1799 * bindings/js/JSHTMLDocumentCustom.cpp:
1800 (WebCore::documentWrite): Added. Uses SegmentedString to avoid conversion from
1801 UString to String and to avoid appending strings. Also added code to handle
1802 newlines efficiently.
1803 (WebCore::JSHTMLDocument::write): Changed to use documentWrite.
1804 (WebCore::JSHTMLDocument::writeln): Ditto.
1807 (WebCore::Document::prepareToWrite): Added. Refactored the initialization part
1808 of write into a separate function for use in the JavaScript binding.
1809 (WebCore::Document::write): Changed to call prepareToWrite.
1811 * dom/Document.h: Added declaration for prepareToWrite.
1813 2009-02-13 Prasanth Ullattil <pullatti@trolltech.com>
1815 Reviewed by Simon Hausmann.
1817 Fixes crash in the Qt port on Windows with comboboxes
1819 The focusWidget in the input context is not reset properly.
1820 The QApplication::setFocusWidget() wont reset the IC if the reason is
1821 PopupFocusReason, this is not ideal. For the time being we are going
1822 to do this from webkit itself.
1824 * platform/qt/QWebPopup.cpp:
1825 (WebCore::QWebPopup::hidePopup):
1827 2009-02-12 Kevin Ollivier <kevino@theolliviers.com>
1829 wx build fix, typo while tweaking last patch for commit.
1831 * platform/wx/wxcode/gtk/fontprops.cpp:
1834 2009-02-12 miggilin <mr.diggilin@gmail.com>
1836 Reviewed by Kevin Ollivier.
1838 Use Cairo/PANGO to fix text measurements and implement proper
1839 non-kerned text drawing on wxGTK.
1841 https://bugs.webkit.org/show_bug.cgi?id=17727
1843 * platform/graphics/GlyphBuffer.h:
1844 * platform/graphics/wx/FontPlatformDataWx.cpp:
1845 (WebCore::fontWeightToWxFontWeight):
1846 * platform/graphics/wx/SimpleFontDataWx.cpp:
1847 (WebCore::SimpleFontData::platformWidthForGlyph):
1848 * platform/wx/wxcode/fontprops.h:
1849 * platform/wx/wxcode/gtk/fontprops.cpp:
1850 (wxFontProperties::wxFontProperties):
1852 * platform/wx/wxcode/gtk/non-kerned-drawing.cpp:
1853 (WebCore::pangoFontMap):
1854 (WebCore::createPangoFontForFont):
1855 (WebCore::createScaledFontForFont):
1856 (WebCore::pango_font_get_glyph):
1857 (WebCore::drawTextWithSpacing):
1858 * platform/wx/wxcode/non-kerned-drawing.h:
1860 2009-02-12 Chris Marrin <cmarrin@apple.com>
1862 Reviewed by Simon Fraser
1864 https://bugs.webkit.org/show_bug.cgi?id=23942
1866 Hook up 3D CSS transforms to the accelerated compositor backend.
1867 Not enabled by default.
1869 * page/animation/AnimationBase.cpp:
1870 (WebCore::blendFunc):
1871 (WebCore::ensurePropertyMap):
1872 * page/animation/CompositeAnimation.cpp:
1873 (WebCore::CompositeAnimationPrivate::updateTransitions):
1874 * page/animation/ImplicitAnimation.cpp:
1875 (WebCore::ImplicitAnimation::willNeedService):
1876 * page/animation/KeyframeAnimation.cpp:
1877 (WebCore::KeyframeAnimation::willNeedService):
1878 * platform/graphics/GraphicsLayer.cpp:
1879 (WebCore::GraphicsLayer::TransformValueList::makeFunctionList):
1880 (WebCore::GraphicsLayer::dumpProperties):
1881 * platform/graphics/mac/GraphicsLayerCA.mm:
1882 (WebCore::copyTransform):
1883 (WebCore::getValueFunctionNameForTransformOperation):
1884 (WebCore::GraphicsLayerCA::animateTransform):
1885 * rendering/RenderBox.cpp:
1886 (WebCore::RenderBox::updateBoxModelInfoFromStyle):
1887 * rendering/RenderLayer.cpp:
1888 (WebCore::RenderLayer::updateTransform):
1889 (WebCore::RenderLayer::hasTransformStyle3D):
1890 (WebCore::RenderLayer::hasPerspective):
1891 (WebCore::RenderLayer::perspectiveTransform):
1892 * rendering/RenderLayer.h:
1893 * rendering/RenderLayerBacking.cpp:
1894 (WebCore::RenderLayerBacking::updateGraphicsLayers):
1895 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1896 (WebCore::RenderLayerBacking::computeTransformOrigin):
1897 (WebCore::RenderLayerBacking::computePerspectiveOrigin):
1898 * rendering/RenderLayerBacking.h:
1899 * rendering/RenderLayerCompositor.cpp:
1900 (WebCore::RenderLayerCompositor::has3DContent):
1901 (WebCore::requiresCompositingLayerForTransform):
1902 (WebCore::RenderLayerCompositor::requiresCompositingLayer):
1903 (WebCore::RenderLayerCompositor::layerHas3DContent):
1904 * rendering/RenderLayerCompositor.h:
1906 2009-02-12 David Hyatt <hyatt@apple.com>
1908 Reviewed by Eric Seidel
1910 Get rid of containingBlockHeight(), since it had only one implementation (despite being virtual) and just returned
1911 containingBlock()->availableHeight(). The latter reads better anyway. Rename containingBlockWidth() to
1912 containingBlockWidthForContent() and move it to RenderBoxModelObject.
1914 * rendering/RenderBlock.cpp:
1915 (WebCore::RenderBlock::localCaretRect):
1916 * rendering/RenderBox.cpp:
1917 (WebCore::RenderBox::containingBlockWidthForContent):
1918 (WebCore::RenderBox::calcWidth):
1919 (WebCore::RenderBox::calcReplacedWidthUsing):
1920 * rendering/RenderBox.h:
1921 * rendering/RenderBoxModelObject.cpp:
1922 (WebCore::RenderBoxModelObject::relativePositionOffsetX):
1923 (WebCore::RenderBoxModelObject::relativePositionOffsetY):
1924 (WebCore::RenderBoxModelObject::containingBlockWidthForContent):
1925 * rendering/RenderBoxModelObject.h:
1926 * rendering/RenderInline.cpp:
1927 (WebCore::RenderInline::marginLeft):
1928 (WebCore::RenderInline::marginRight):
1929 * rendering/RenderObject.cpp:
1930 * rendering/RenderObject.h:
1931 * rendering/RenderSVGContainer.cpp:
1932 (WebCore::RenderSVGContainer::calcReplacedWidth):
1934 2009-02-12 Simon Fraser <simon.fraser@apple.com>
1936 Fix non-Mac builds by adding Matrix3DTransformOperation.* and
1937 PerspectiveTransformOperation.*. Cleaned out some cruft in
1938 the WebCore.vcproj fle.
1943 * WebCore.vcproj/WebCore.vcproj:
1945 2009-02-12 David Smith <catfish.man@gmail.com>
1947 Reviewed by Dave Hyatt.
1949 Fix https://bugs.webkit.org/show_bug.cgi?id=23935
1950 Nested :not() and non-simple selectors in :not() should be invalid
1952 * css/CSSGrammar.y: Reject nested :not()
1953 * css/CSSStyleSelector.cpp:
1954 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): ASSERT() rather than checking, since the parser enforces it now
1956 2009-02-12 Kevin Ollivier <kevino@theolliviers.com>
1960 * WebCoreSources.bkl:
1962 2009-02-12 Simon Fraser <simon.fraser@apple.com>
1964 Fix build with ACCELERATED_COMPOSITING turned on.
1966 Need to cast toRenderBox() in order to call overflowClipRect().
1968 * rendering/RenderLayerBacking.cpp:
1969 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1971 2009-02-12 Oliver Hunt <oliver@apple.com>
1973 Reviewed by NOBODY (Build fix).
1979 2009-02-12 David Hyatt <hyatt@apple.com>
1981 Rename getOverflowClipRect and getClipRect to overflowClipRect and clipRect. Move them to RenderBox, since these methods
1982 only apply to boxes. Devirtualize clipRect, since it was not subclassed. Move controlClip stuff to RenderBox also.
1984 Reviewed by Simon Fraser
1986 * editing/Editor.cpp:
1987 (WebCore::Editor::insideVisibleArea):
1988 * rendering/RenderBox.cpp:
1989 (WebCore::RenderBox::overflowClipRect):
1990 (WebCore::RenderBox::clipRect):
1991 * rendering/RenderBox.h:
1992 (WebCore::RenderBox::hasControlClip):
1993 (WebCore::RenderBox::controlClipRect):
1994 * rendering/RenderForeignObject.cpp:
1995 (WebCore::RenderForeignObject::paint):
1996 * rendering/RenderLayer.cpp:
1997 (WebCore::RenderLayer::calculateClipRects):
1998 (WebCore::RenderLayer::calculateRects):
1999 * rendering/RenderLayerBacking.cpp:
2000 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2001 * rendering/RenderObject.h:
2002 (WebCore::RenderObject::hasClip):
2003 (WebCore::RenderObject::hasOverflowClip):
2004 * rendering/RenderTable.cpp:
2005 (WebCore::RenderTable::overflowClipRect):
2006 * rendering/RenderTable.h:
2008 2009-02-12 Simon Fraser <simon.fraser@apple.com>
2010 Fix build with ACCELERATED_COMPOSITING turned on (simple copy/paste error)
2012 * platform/graphics/mac/GraphicsLayerCA.mm:
2013 (WebCore::GraphicsLayerCA::setBasicAnimation):
2015 2009-02-12 Julien Chaffraix <jchaffraix@webkit.org>
2019 Release build fix when VIDEO is disabled (it should also
2020 help the builds with WORKERS or XSLT disabled).
2022 * bindings/js/JSDOMWindowBase.cpp:
2023 (jsDOMWindowBaseAudio): Added an UNUSED_PARAM for exec and slot when
2025 (jsDOMWindowBaseWorker): Ditto for WORKERS.
2026 (jsDOMWindowBaseXSLTProcessor): Ditto for XSLT.
2028 2009-02-12 Eric Carlson <eric.carlson@apple.com>
2030 Reviewed by Simon Fraser.
2032 https://bugs.webkit.org/show_bug.cgi?id=23923
2033 Implement mediaPlayerVolumeChanged so a media engine can report autonomous volume changes.
2034 Supporting this requires that we know when we are processing a media engine callback so
2035 we don't turn around and tell the media player to change the volume when it is reporting
2038 * html/HTMLMediaElement.cpp:
2039 (WebCore::HTMLMediaElement::HTMLMediaElement): initialize m_processingMediaPlayerCallback
2040 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): call begin/endProcessingMediaPlayerCallback
2041 (WebCore::HTMLMediaElement::setNetworkState): logic split out of mediaPlayerNetworkStateChanged
2042 to make it easier to maintain m_processingMediaPlayerCallback.
2043 (WebCore::HTMLMediaElement::mediaPlayerReadyStateChanged): call begin/endProcessingMediaPlayerCallback
2044 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Ditto.
2045 (WebCore::HTMLMediaElement::mediaPlayerRepaint): Ditto.
2046 (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged): New
2047 (WebCore::HTMLMediaElement::updateVolume): Don't change media engine volume if we are processing
2048 a callback from the engine.
2049 * html/HTMLMediaElement.h:
2050 (WebCore::HTMLMediaElement::processingMediaPlayerCallback): New, return true if (m_processingMediaPlayerCallback>0)
2051 (WebCore::HTMLMediaElement::beginProcessingMediaPlayerCallback): New, increment m_processingMediaPlayerCallback
2052 (WebCore::HTMLMediaElement::endProcessingMediaPlayerCallback): New, decrement m_processingMediaPlayerCallback
2054 2009-02-12 Eric Carlson <eric.carlson@apple.com>
2056 Reviewed by Simon Fraser.
2058 Support MPEG content on Mac and Windows.
2059 <rdar://problem/5917509>
2060 https://bugs.webkit.org/show_bug.cgi?id=23495
2062 Test: media/audio-mpeg-supported.html
2064 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2065 (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
2067 * platform/graphics/win/QTMovieWin.cpp:
2068 (QTMovieWin::disableUnsupportedTracks):
2070 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: fix typo added in r40925
2072 2009-02-12 David Hyatt <hyatt@apple.com>
2074 Reviewed by Sam Weinig
2076 Move containsFloats, hasOverhangingFloats, shrinkToAvoidFloats and avoidsFloats down to
2077 RenderBox, since these methods only apply to boxes.
2079 * rendering/RenderBlock.cpp:
2080 (WebCore::RenderBlock::collapseMargins):
2081 (WebCore::RenderBlock::clearFloatsIfNeeded):
2082 (WebCore::RenderBlock::layoutBlockChildren):
2083 (WebCore::RenderBlock::clearFloats):
2084 (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
2085 (WebCore::RenderBlock::calcBlockPrefWidths):
2086 * rendering/RenderBlock.h:
2087 (WebCore::RenderBlock::containsFloats):
2088 (WebCore::RenderBlock::hasOverhangingFloats):
2089 * rendering/RenderBox.cpp:
2090 (WebCore::RenderBox::shrinkToAvoidFloats):
2091 (WebCore::RenderBox::avoidsFloats):
2092 * rendering/RenderBox.h:
2093 * rendering/RenderObject.cpp:
2094 * rendering/RenderObject.h:
2095 (WebCore::RenderObject::isFloatingOrPositioned):
2096 * rendering/RenderView.h:
2098 2009-02-12 Chris Marrin <cmarrin@apple.com>
2100 Reviewed by Dave Hyatt
2102 https://bugs.webkit.org/show_bug.cgi?id=23908
2104 Added parsing of 3d transform functions and properties
2105 (perspective, perspective-origin, transform-style-3d,
2106 and backface-visibility).
2108 Test: transforms/3d/cssmatrix-3d-interface.xhtml
2110 * css/CSSComputedStyleDeclaration.cpp:
2112 (WebCore::computedTransform):
2113 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2114 * css/CSSMutableStyleDeclaration.cpp:
2115 (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
2116 * css/CSSParser.cpp:
2117 (WebCore::CSSParser::parseValue):
2118 (WebCore::CSSParser::parseFillProperty):
2119 (WebCore::CSSParser::parseTransformOriginShorthand):
2120 (WebCore::TransformOperationInfo::TransformOperationInfo):
2121 (WebCore::CSSParser::parseTransform):
2122 (WebCore::CSSParser::parseTransformOrigin):
2123 (WebCore::CSSParser::parsePerspectiveOrigin):
2125 * css/CSSPrimitiveValue.h:
2126 (WebCore::CSSPrimitiveValue::isUnitTypeLength):
2127 * css/CSSPropertyNames.in:
2128 * css/CSSStyleSelector.cpp:
2129 (WebCore::CSSStyleSelector::adjustRenderStyle):
2130 (WebCore::convertToLength):
2131 (WebCore::CSSStyleSelector::applyProperty):
2132 (WebCore::CSSStyleSelector::mapFillSize):
2133 (WebCore::CSSStyleSelector::mapFillXPosition):
2134 (WebCore::CSSStyleSelector::mapFillYPosition):
2135 (WebCore::getTransformOperationType):
2136 (WebCore::CSSStyleSelector::createTransformOperations):
2137 * css/CSSValueKeywords.in:
2138 * css/WebKitCSSTransformValue.cpp:
2139 (WebCore::WebKitCSSTransformValue::cssText):
2140 * css/WebKitCSSTransformValue.h:
2141 (WebCore::WebKitCSSTransformValue::):
2142 * css/WebKitCSSTransformValue.idl:
2143 * platform/graphics/transforms/Matrix3DTransformOperation.cpp:
2144 * platform/graphics/transforms/Matrix3DTransformOperation.h:
2145 * platform/graphics/transforms/PerspectiveTransformOperation.cpp:
2146 * platform/graphics/transforms/PerspectiveTransformOperation.h:
2147 * platform/graphics/transforms/RotateTransformOperation.cpp:
2148 (WebCore::RotateTransformOperation::blend):
2149 * platform/graphics/transforms/RotateTransformOperation.h:
2150 (WebCore::RotateTransformOperation::RotateTransformOperation):
2151 * platform/graphics/transforms/ScaleTransformOperation.h:
2152 (WebCore::ScaleTransformOperation::ScaleTransformOperation):
2153 * platform/graphics/transforms/TransformOperation.h:
2154 (WebCore::TransformOperation::is3DOperation):
2155 * platform/graphics/transforms/TransformOperations.h:
2156 (WebCore::TransformOperations::has3DOperation):
2157 * platform/graphics/transforms/TranslateTransformOperation.h:
2158 (WebCore::TranslateTransformOperation::TranslateTransformOperation):
2160 2009-02-12 Kevin Ollivier <kevino@theolliviers.com>
2166 2009-02-12 Brady Eidson <beidson@apple.com>
2168 Reviewed by Darin Adler
2170 Fix potential ref-count or null-deref problems with C++ objects as Obj-C members.
2172 * platform/mac/SharedBufferMac.mm: Change to use RefPtr<> instead of ref()/deref().
2173 (-[WebCoreSharedBufferData dealloc]):
2174 (-[WebCoreSharedBufferData finalize]):
2175 (-[WebCoreSharedBufferData initWithSharedBuffer:]):
2177 2009-02-12 David Hyatt <hyatt@apple.com>
2179 Remove calcWidth from RenderObject. Nobody ever called it on RenderObjects.
2181 Reviewed by Sam Weinig
2183 * rendering/RenderObject.h:
2185 2009-02-12 David Hyatt <hyatt@apple.com>
2187 Reviewed by Mark Rowe
2189 Fix for regression where form controls would paint yellow highlights. The containsComposition check needs to
2190 null check node() now.
2192 * rendering/InlineTextBox.cpp:
2193 (WebCore::InlineTextBox::paint):
2195 2009-02-12 Simon Fraser <simon.fraser@apple.com>
2199 Change Animation::setDirection() to take the new enum value, and fix
2202 Fix build error in MediaPlayerPrivateQTKit.h.
2204 * css/CSSStyleSelector.cpp:
2205 (WebCore::CSSStyleSelector::mapAnimationDirection):
2206 * platform/animation/Animation.h:
2207 (WebCore::Animation::setDirection):
2208 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2210 2009-02-12 David Hyatt <hyatt@apple.com>
2212 Reviewed by Simon Fraser
2214 Remove the overrideSize methods from RenderObject. Devirtualize all of the accessors on RenderBox.
2216 * rendering/RenderBox.h:
2217 * rendering/RenderObject.h:
2219 2009-02-12 Eric Carlson <eric.carlson@apple.com>
2221 Darin Adler, Antti Koivisto, Holger Hans Peter Freyther
2223 Bug 23797: A platform should be able to use more than one media engine for <video> and <audio>
2224 https://bugs.webkit.org/show_bug.cgi?id=23797
2226 * WebCore.xcodeproj/project.pbxproj: add MediaPlayerPrivate.h
2228 * html/HTMLMediaElement.cpp:
2229 (WebCore::HTMLMediaElement::load): selectMediaURL now also returns a MIME type, pass it to
2230 MediaPlayer::load so it can choose the right media engine
2231 (WebCore::HTMLMediaElement::selectMediaURL): renamed from pickMedia. use MIMETypeRegistry
2232 functions to strip params from the url and extract the codecs parameter. call
2233 MediaPlayer::supportsType to see if we can open the file since only a media engine can
2234 answer questions about supported type+codecs.
2235 * html/HTMLMediaElement.h:
2237 * platform/MIMETypeRegistry.cpp:
2238 (WebCore::MIMETypeRegistry::getParameterFromMIMEType): New, find and return a MIME type parameter
2239 (WebCore::MIMETypeRegistry::stripParametersFromMIMEType): New, strip all parameters from a MIME type
2240 * platform/MIMETypeRegistry.h:
2242 * platform/graphics/MediaPlayer.cpp:
2243 (WebCore::NullMediaPlayerPrivate::NullMediaPlayerPrivate):
2244 (WebCore::NullMediaPlayerPrivate::load):
2245 (WebCore::NullMediaPlayerPrivate::cancelLoad):
2246 (WebCore::NullMediaPlayerPrivate::play):
2247 (WebCore::NullMediaPlayerPrivate::pause):
2248 (WebCore::NullMediaPlayerPrivate::naturalSize):
2249 (WebCore::NullMediaPlayerPrivate::hasVideo):
2250 (WebCore::NullMediaPlayerPrivate::setVisible):
2251 (WebCore::NullMediaPlayerPrivate::duration):
2252 (WebCore::NullMediaPlayerPrivate::currentTime):
2253 (WebCore::NullMediaPlayerPrivate::seek):
2254 (WebCore::NullMediaPlayerPrivate::seeking):
2255 (WebCore::NullMediaPlayerPrivate::setEndTime):
2256 (WebCore::NullMediaPlayerPrivate::setRate):
2257 (WebCore::NullMediaPlayerPrivate::paused):
2258 (WebCore::NullMediaPlayerPrivate::setVolume):
2259 (WebCore::NullMediaPlayerPrivate::networkState):
2260 (WebCore::NullMediaPlayerPrivate::readyState):
2261 (WebCore::NullMediaPlayerPrivate::maxTimeSeekable):
2262 (WebCore::NullMediaPlayerPrivate::maxTimeBuffered):
2263 (WebCore::NullMediaPlayerPrivate::dataRate):
2264 (WebCore::NullMediaPlayerPrivate::totalBytesKnown):
2265 (WebCore::NullMediaPlayerPrivate::totalBytes):
2266 (WebCore::NullMediaPlayerPrivate::bytesLoaded):
2267 (WebCore::NullMediaPlayerPrivate::setRect):
2268 (WebCore::NullMediaPlayerPrivate::paint):
2269 (WebCore::createNullMediaPlayer):
2270 Do nothing media player so MediaPlayer doesn't have to NULL check before calling current engine.
2272 (WebCore::MediaPlayerFactory::MediaPlayerFactory): New, factory constructor.
2273 (WebCore::installedMediaEngines): New, returns vector of all installed engines.
2274 (WebCore::addMediaEngine): New, add a media engine to the cache.
2275 (WebCore::chooseBestEngineForTypeAndCodecs): New, return an engine that might support a MIME type.
2276 (WebCore::MediaPlayer::MediaPlayer): create NULL media player so we have a default. Initialize m_currentMediaEngine.
2277 (WebCore::MediaPlayer::~MediaPlayer): don't need to delete m_private, it is now an OwnPtr.
2278 (WebCore::MediaPlayer::load): Take MIME type as well as url, since we need it to find the right
2279 media engine. If no MIME type is provided, try to devine one from the url. Choose a media engine
2280 based on the MIME type and codecs parameter.
2281 (WebCore::MediaPlayer::currentTime): Remove excess white space.
2282 (WebCore::MediaPlayer::supportsType): Take codecs param as well as MIME type. Return enum so we can
2283 indicate "maybe" condition.
2284 (WebCore::MediaPlayer::getSupportedTypes): Build up list of MIME types by consulting all engines.
2285 (WebCore::MediaPlayer::isAvailable): return true if any media engine is installed.
2287 * platform/graphics/MediaPlayer.h:
2288 (WebCore::MediaPlayer::):
2289 (WebCore::MediaPlayer::frameView): accessor function.
2291 * platform/graphics/MediaPlayerPrivate.h: New, declares abstract interface for media engines.
2292 (WebCore::MediaPlayerPrivateInterface::~MediaPlayerPrivateInterface):
2293 (WebCore::MediaPlayerPrivateInterface::totalBytesKnown):
2295 * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Add support for engine factory
2297 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2298 (WebCore::MediaPlayerPrivate::create): New, media engine factory function
2299 (WebCore::MediaPlayerPrivate::registerMediaEngine): Register engine with MediaPlayer factory
2300 (WebCore::MediaPlayerPrivate::load): URL is a const String.
2301 (WebCore::MediaPlayerPrivate::duration): Declare const.
2302 (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
2303 (WebCore::MediaPlayerPrivate::hasVideo): Ditto.
2304 (WebCore::MediaPlayerPrivate::networkState): Ditto.
2305 (WebCore::MediaPlayerPrivate::readyState): Ditto.
2306 (WebCore::MediaPlayerPrivate::maxTimeBuffered): Ditto.
2307 (WebCore::MediaPlayerPrivate::maxTimeSeekable): Ditto.
2308 (WebCore::MediaPlayerPrivate::maxTimeLoaded): Ditto.
2309 (WebCore::MediaPlayerPrivate::bytesLoaded): Ditto.
2310 (WebCore::MediaPlayerPrivate::totalBytesKnown): Ditto.
2311 (WebCore::MediaPlayerPrivate::totalBytes): Ditto.
2312 (WebCore::MediaPlayerPrivate::supportsType): Return MediaPlayer::SupportsType enum instead of bool.
2313 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
2314 (WebCore::MediaPlayerPrivate::isAvailable):
2316 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2317 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2318 (WebCore::MediaPlayerPrivateQTKit::create): New, media engine factory function
2319 (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): Register engine with MediaPlayer factory
2320 (WebCore::MediaPlayerPrivate::createQTMovieView): don't access MediaPlayer->m_frameView directly,
2321 use accessor function.
2322 (WebCore::MediaPlayerPrivate::setUpVideoRendering): Ditto.
2323 (WebCore::MediaPlayerPrivate::paint): Ditto.
2324 (WebCore::mimeTypeCache): New.
2325 (WebCore::MediaPlayerPrivate::getSupportedTypes): New, media engine factory function.
2326 (WebCore::MediaPlayerPrivate::supportsType): return MediaPlayer::SupportsType enum instead of bool
2327 (-[WebCoreMovieObserver initWithCallback:]): fix formatting
2329 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
2330 (WebCore::MediaPlayerPrivate::create):
2331 (WebCore::MediaPlayerPrivate::registerMediaEngine):
2332 (WebCore::MediaPlayerPrivate::supportsType):
2333 (WebCore::MediaPlayerPrivate::load): URL is a const String.
2334 * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
2335 (WebCore::MediaPlayerPrivate::isAvailable):
2337 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
2338 (WebCore::MediaPlayerPrivate::create): New, media engine factory function
2339 (WebCore::MediaPlayerPrivate::registerMediaEngine): New, register engine with MediaPlayer factory
2340 (WebCore::MediaPlayerPrivate::load): URL is a const String.
2341 (WebCore::MediaPlayerPrivate::paint): don't access MediaPlayer->m_frameView directly,
2342 use accessor function.
2343 (WebCore::mimeTypeCache): New.
2344 (WebCore::MediaPlayerPrivateQTWin::getSupportedTypes): New, media engine factory function.
2345 (WebCore::MediaPlayerPrivateQTWin::supportsType): return MediaPlayer::SupportsType enum instead of bool
2346 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
2348 2009-02-12 Julien Chaffraix <jchaffraix@webkit.org>
2350 Reviewed by Darin Adler.
2352 Test: fast/dom/prefixed-image-tag.xhtml
2354 Bug 23915: Remove setPrefix work-around in Document::createElement(QualifiedName, bool)
2356 Instead we now directly propage the QualifiedName inside the generated Factory.
2358 Test: fast/dom/prefixed-image-tag.xhtml
2361 (WebCore::Document::createElement): Removed the setPrefix work-around
2362 and replaced it with an ASSERT to catch mistakes inside the Factory code.
2363 Remove the unneeded ExceptionCode argument.
2365 (WebCore::Document::createElementNS): Removed ExceptionCode argument.
2366 * dom/Document.h: Updated the signature.
2367 * dom/XMLTokenizerLibxml2.cpp:
2368 (WebCore::XMLTokenizer::startElementNs): Removed ExceptionCode argument.
2369 * dom/XMLTokenizerQt.cpp: Ditto.
2370 (WebCore::XMLTokenizer::parseStartElement): Ditto.
2372 * dom/make_names.pl: Implemented the QualifiedName propogation logic
2375 2009-02-12 Simon Fraser <simon.fraser@apple.com>
2377 Reviewed by Dave Hyatt
2379 https://bugs.webkit.org/show_bug.cgi?id=23188
2381 Define enum values for Animation::direction(), and one for
2382 IterationCountInfinite to make the code more self-documenting.
2384 Order the member vars of Animation to optimize packing.
2386 * css/CSSComputedStyleDeclaration.cpp:
2387 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2388 * platform/animation/Animation.cpp:
2389 (WebCore::Animation::Animation):
2390 (WebCore::Animation::operator=):
2391 (WebCore::Animation::animationsMatch):
2392 * platform/animation/Animation.h:
2393 (WebCore::Animation::):
2394 (WebCore::Animation::direction):
2395 (WebCore::Animation::initialAnimationDirection):
2396 * platform/graphics/mac/GraphicsLayerCA.mm:
2397 (WebCore::GraphicsLayerCA::setBasicAnimation):
2398 (WebCore::GraphicsLayerCA::setKeyframeAnimation):
2400 2009-02-12 Christian Dywan <christian@twotoasts.de>
2402 Reviewed by Holger Freyther.
2404 * platform/network/soup/ResourceHandleSoup.cpp:
2405 (WebCore::ResourceHandle::startHttp): Don't use O_CLOEXEC for now.
2407 2009-02-12 Julien Chaffraix <jchaffraix@webkit.org>
2409 Reviewed by Darin Adler.
2411 Bug 23826: Potential bug with before/after rule while moving element from one document to another
2413 Moved the document before/after toggle from the constructor to insertedIntoDocument.
2415 Test: fast/css-generated-content/beforeAfter-interdocument.html
2417 * html/HTMLQuoteElement.cpp:
2418 (WebCore::HTMLQuoteElement::HTMLQuoteElement):
2419 (WebCore::HTMLQuoteElement::insertedIntoDocument):
2420 * html/HTMLQuoteElement.h:
2422 2009-02-12 David Hyatt <hyatt@apple.com>
2424 Reviewed by Simon Fraser
2426 Fix for https://bugs.webkit.org/show_bug.cgi?id=23912
2428 I have no idea why this broke. As far as I can tell the old code never should have worked in
2429 the first place. Add code to handleWheelEvent that will find an enclosing renderer for a node
2430 in order to attempt a wheel scroll.
2432 * page/EventHandler.cpp:
2433 (WebCore::EventHandler::handleWheelEvent):
2435 2009-02-12 David Hyatt <hyatt@apple.com>
2437 Move the functions that paint borders, box shadows and border images into RenderBoxModelObject. drawBorder and drawBorderArc, because they are used
2438 for outlines as well as borders, need to stay in RenderObject. Rename them to drawLineForBoxSide and drawArcForBoxSide in order to reflect their
2439 more generic use. Rename the BorderSide struct to BoxSide, since the concept of "side" is just a rectangle concept and not a border concept.
2441 Reviewed by Simon Fraser
2443 * rendering/InlineFlowBox.cpp:
2444 (WebCore::InlineFlowBox::paintFillLayer):
2445 (WebCore::InlineFlowBox::paintBoxShadow):
2446 (WebCore::InlineFlowBox::paintBoxDecorations):
2447 (WebCore::InlineFlowBox::paintMask):
2448 * rendering/RenderBlock.cpp:
2449 (WebCore::RenderBlock::paintColumns):
2450 * rendering/RenderBoxModelObject.cpp:
2451 (WebCore::RenderBoxModelObject::paintNinePieceImage):
2452 (WebCore::RenderBoxModelObject::paintBorder):
2453 (WebCore::RenderBoxModelObject::paintBoxShadow):
2454 * rendering/RenderBoxModelObject.h:
2455 * rendering/RenderFieldset.cpp:
2456 (WebCore::RenderFieldset::paintBorderMinusLegend):
2457 * rendering/RenderInline.cpp:
2458 (WebCore::RenderInline::paintOutlineForLine):
2459 * rendering/RenderObject.cpp:
2460 (WebCore::RenderObject::drawLineForBoxSide):
2461 (WebCore::RenderObject::drawArcForBoxSide):
2462 (WebCore::RenderObject::paintOutline):
2463 * rendering/RenderObject.h:
2465 (WebCore::RenderObject::hasBoxDecorations):
2466 * rendering/RenderTableCell.cpp:
2467 (WebCore::CollapsedBorders::addBorder):
2468 (WebCore::RenderTableCell::paintCollapsedBorder):
2470 2009-02-12 Eric Carlson <eric.carlson@apple.com>
2472 Reviewed by Simon Fraser
2474 Bug 18322: video element should have ui when scripting is disabled
2475 https://bugs.webkit.org/show_bug.cgi?id=18322
2477 * html/HTMLMediaElement.cpp:
2478 (WebCore::HTMLMediaElement::controls): always return 'true' when JavaScript is disabled.
2479 * manual-tests/media-controls-when-javascript-disabled.html: Added.
2481 2009-02-12 Dimitri Glazkov <dglazkov@chromium.org>
2483 Reviewed by Eric Seidel.
2485 https://bugs.webkit.org/show_bug.cgi?id=23906
2486 Add custom V8 bindings for HTMLPlugInElement.
2488 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp: Added.
2489 (WebCore::NAMED_PROPERTY_GETTER):
2490 (WebCore::NAMED_PROPERTY_SETTER):
2491 (WebCore::CALLBACK_FUNC_DECL):
2492 (WebCore::INDEXED_PROPERTY_GETTER):
2493 (WebCore::INDEXED_PROPERTY_SETTER):
2495 2009-02-12 Gustavo Noronha Silva <gns@gnome.org>
2497 Reviewed by Mark Rowe.
2499 [GTK] Soup backend must handle upload of multiple files
2500 https://bugs.webkit.org/show_bug.cgi?id=18343
2502 * platform/network/soup/ResourceHandleSoup.cpp:
2504 (WebCore::freeFileMapping):
2505 (WebCore::ResourceHandle::startHttp): Support multipart request bodies
2506 mmap'ing files to be uploaded.
2508 2009-02-12 Adam Treat <adam.treat@torchmobile.com>
2510 Fix the Qt build following r40871 which changed RenderObject::element()
2511 into RenderObject::node().
2513 * platform/qt/RenderThemeQt.cpp:
2514 (WebCore::RenderThemeQt::getMediaElementFromRenderObject):
2515 (WebCore::RenderThemeQt::getMediaControlForegroundColor):
2517 2009-02-12 Alexey Proskuryakov <ap@webkit.org>
2521 * platform/graphics/transforms/RotateTransformOperation.cpp: Include <algorithm>.
2523 2009-02-12 Jian Li <jianli@chromium.org>
2525 Reviewed by Alexey Proskuryakov.
2527 Change worker code to use different proxy class pointers.
2528 https://bugs.webkit.org/show_bug.cgi?id=23859
2530 This is a step towards using separate proxies in multi-process implementation.
2532 * bindings/js/WorkerScriptController.cpp:
2533 (WebCore::WorkerScriptController::evaluate):
2535 (WebCore::Worker::Worker):
2536 (WebCore::Worker::~Worker):
2537 (WebCore::Worker::postMessage):
2538 (WebCore::Worker::terminate):
2539 (WebCore::Worker::hasPendingActivity):
2540 (WebCore::Worker::notifyFinished):
2541 (WebCore::Worker::dispatchMessage):
2543 * dom/WorkerContext.cpp:
2544 (WebCore::WorkerContext::~WorkerContext):
2545 (WebCore::WorkerContext::reportException):
2546 (WebCore::WorkerContext::addMessage):
2547 (WebCore::WorkerContext::postMessage):
2548 (WebCore::WorkerContext::dispatchMessage):
2549 * dom/WorkerContext.h:
2550 * dom/WorkerContextProxy.h:
2551 * dom/WorkerMessagingProxy.cpp:
2552 (WebCore::MessageWorkerContextTask::performTask):
2553 (WebCore::MessageWorkerTask::performTask):
2554 (WebCore::WorkerContextProxy::create):
2555 (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
2556 (WebCore::WorkerMessagingProxy::~WorkerMessagingProxy):
2557 (WebCore::WorkerMessagingProxy::startWorkerContext):
2558 (WebCore::postConsoleMessageTask):
2559 (WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
2560 (WebCore::WorkerMessagingProxy::workerThreadCreated):
2561 * dom/WorkerMessagingProxy.h:
2562 * dom/WorkerObjectProxy.h:
2563 * dom/WorkerThread.cpp:
2564 (WebCore::WorkerThread::create):
2565 (WebCore::WorkerThread::WorkerThread):
2566 (WebCore::WorkerThread::workerThread):
2567 * dom/WorkerThread.h:
2568 (WebCore::WorkerThread::workerObjectProxy):
2569 * loader/WorkerThreadableLoader.cpp:
2570 (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
2572 2009-02-12 David Levin <levin@chromium.org>
2574 Reviewed by Alexey Proskuryakov.
2576 Bug 23688: ThreadableLoader needs a sync implementation for Workers.
2577 <https://bugs.webkit.org/show_bug.cgi?id=23688>
2579 Add ResourceError to ThreadableLoaderClient.
2581 No observable change in behavior, so no test.
2583 * loader/DocumentThreadableLoader.cpp:
2584 (WebCore::DocumentThreadableLoader::create):
2585 (WebCore::DocumentThreadableLoader::willSendRequest):
2586 (WebCore::DocumentThreadableLoader::didFail):
2587 * loader/ThreadableLoaderClient.h:
2588 (WebCore::ThreadableLoaderClient::didFail):
2589 (WebCore::ThreadableLoaderClient::didFailWillSendRequestCheck):
2590 * loader/ThreadableLoaderClientWrapper.h:
2591 (WebCore::ThreadableLoaderClientWrapper::didFail):
2592 * loader/WorkerThreadableLoader.cpp:
2593 (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
2594 (WebCore::workerContextDidFail):
2595 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
2596 * loader/WorkerThreadableLoader.h:
2597 * xml/XMLHttpRequest.cpp:
2598 (WebCore::XMLHttpRequest::didFail):
2599 (WebCore::XMLHttpRequest::didFailWillSendRequestCheck):
2600 * xml/XMLHttpRequest.h:
2602 2009-02-11 Simon Fraser <simon.fraser@apple.com>
2604 Reviewed by Dave Hyatt
2606 Fix the build on Leopard with ACCELERATED_COMPOSITING turned on.
2608 * WebCore.xcodeproj/project.pbxproj:
2609 FloatPoint3D needs to be a private header, since it's included by GraphicsLayer.h
2610 * platform/graphics/mac/GraphicsLayerCA.mm:
2611 (WebCore::getTransformFunctionValue):
2612 (WebCore::caValueFunctionSupported):
2613 (WebCore::GraphicsLayerCA::setAnchorPoint):
2614 (WebCore::GraphicsLayerCA::setPreserves3D):
2615 (WebCore::GraphicsLayerCA::setContentsToImage):
2616 (WebCore::GraphicsLayerCA::setBasicAnimation):
2617 (WebCore::GraphicsLayerCA::setKeyframeAnimation):
2618 * rendering/RenderLayer.h:
2619 (WebCore::RenderLayer::isRootLayer):
2620 Fix isRootLayer to return true for the renderView's layer, not the root
2623 2009-02-11 Adele Peterson <adele@apple.com>
2625 Reviewed by Oliver Hunt.
2627 Fix for https://bugs.webkit.org/show_bug.cgi?id=23910
2628 <rdar://problem/6160546> REGRESSION: In Full page mode, movie controller hides when I drag the knob if movie is playing
2630 * rendering/RenderMedia.cpp: (WebCore::RenderMedia::forwardEvent):
2631 When we get a mouseOut event, consider the mouse as still within the RenderMedia if the relatedTarget is a descendant.
2633 2009-02-11 David Hyatt <hyatt@apple.com>
2635 Remove all of the inline box wrapper functions from RenderObject, since they only apply to RenderBox. Devirtualize the functions.
2636 Patch all of the call sites to convert to a RenderBox.
2638 Reviewed by Simon Fraser
2641 (WebCore::nextRenderedEditable):
2642 (WebCore::previousRenderedEditable):
2643 (WebCore::Position::getInlineBoxAndOffset):
2644 * rendering/InlineBox.cpp:
2645 (WebCore::InlineBox::deleteLine):
2646 (WebCore::InlineBox::extractLine):
2647 (WebCore::InlineBox::attachLine):
2648 * rendering/RenderLineBoxList.cpp:
2649 (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
2650 * rendering/RenderObject.cpp:
2651 * rendering/RenderObject.h:
2652 * rendering/RenderObjectChildList.cpp:
2653 (WebCore::RenderObjectChildList::removeChildNode):
2654 * rendering/RenderTextControl.cpp:
2655 (WebCore::RenderTextControl::textWithHardLineBreaks):
2657 2009-02-11 David Hyatt <hyatt@apple.com>
2659 Eliminate createInlineBox and dirtyLineBoxes from RenderObject. These functions have been devirtualized.
2660 The single call site now calls a helper function that just bit checks and casts before calling the correct
2661 type. RenderBlock's dirtyLineBoxes function was dead code (caused by the RenderFlow deletion), so it has
2664 Reviewed by Eric Seidel
2666 * rendering/RenderBR.cpp:
2667 * rendering/RenderBR.h:
2668 * rendering/RenderBlock.cpp:
2669 (WebCore::RenderBlock::createRootInlineBox):
2670 * rendering/RenderBlock.h:
2671 * rendering/RenderBox.cpp:
2672 (WebCore::RenderBox::createInlineBox):
2673 * rendering/RenderBox.h:
2674 * rendering/RenderCounter.cpp:
2675 * rendering/RenderCounter.h:
2676 * rendering/RenderInline.cpp:
2677 (WebCore::RenderInline::createInlineFlowBox):
2678 * rendering/RenderInline.h:
2679 * rendering/RenderObject.cpp:
2680 * rendering/RenderObject.h:
2681 * rendering/RenderSVGInlineText.cpp:
2682 (WebCore::RenderSVGInlineText::createTextBox):
2683 * rendering/RenderSVGInlineText.h:
2684 (WebCore::RenderSVGInlineText::isSVGText):
2685 * rendering/RenderText.cpp:
2686 (WebCore::RenderText::createTextBox):
2687 (WebCore::RenderText::createInlineTextBox):
2688 * rendering/RenderText.h:
2689 * rendering/bidi.cpp:
2690 (WebCore::createInlineBoxForRenderer):
2691 (WebCore::RenderBlock::createLineBoxes):
2692 (WebCore::RenderBlock::constructLine):
2693 (WebCore::RenderBlock::layoutInlineChildren):
2695 2009-02-11 Chris Marrin <cmarrin@apple.com>
2697 Reviewed by Dave Hyatt.
2699 https://bugs.webkit.org/show_bug.cgi?id=23905
2701 Adds support for 3D CSS properties (transform-style-3d, perspective,
2702 perspective-origin, and backface-visibility) to RenderStyle and friends
2704 * platform/graphics/transforms/TransformOperation.h
2705 * rendering/style/RenderStyle.cpp:
2706 (WebCore::RenderStyle::diff):
2707 (WebCore::RenderStyle::applyTransform):
2708 * rendering/style/RenderStyle.h:
2709 (WebCore::InheritedFlags::transformOriginZ):
2710 (WebCore::InheritedFlags::hasTransformRelatedProperty):
2711 (WebCore::InheritedFlags::transformStyle3D):
2712 (WebCore::InheritedFlags::backfaceVisibility):
2713 (WebCore::InheritedFlags::perspective):
2714 (WebCore::InheritedFlags::perspectiveOriginX):
2715 (WebCore::InheritedFlags::perspectiveOriginY):
2716 (WebCore::InheritedFlags::setTransformOriginZ):
2717 (WebCore::InheritedFlags::setTransformStyle3D):
2718 (WebCore::InheritedFlags::setBackfaceVisibility):
2719 (WebCore::InheritedFlags::setPerspective):
2720 (WebCore::InheritedFlags::setPerspectiveOriginX):
2721 (WebCore::InheritedFlags::setPerspectiveOriginY):
2722 (WebCore::InheritedFlags::initialTransformOriginZ):
2723 (WebCore::InheritedFlags::initialTransformStyle3D):
2724 (WebCore::InheritedFlags::initialBackfaceVisibility):
2725 (WebCore::InheritedFlags::initialPerspective):
2726 (WebCore::InheritedFlags::initialPerspectiveOriginX):
2727 (WebCore::InheritedFlags::initialPerspectiveOriginY):
2728 * rendering/style/RenderStyleConstants.h:
2730 * rendering/style/StyleRareNonInheritedData.cpp:
2731 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2732 (WebCore::StyleRareNonInheritedData::operator==):
2733 * rendering/style/StyleRareNonInheritedData.h:
2734 * rendering/style/StyleTransformData.cpp:
2735 (WebCore::StyleTransformData::StyleTransformData):
2736 (WebCore::StyleTransformData::operator==):
2737 * rendering/style/StyleTransformData.h:
2739 2009-02-11 Simon Fraser <simon.fraser@apple.com>
2743 Fix ACCELERATED_COMPOSITING build.
2745 * rendering/RenderLayerBacking.cpp:
2746 (WebCore::RenderLayerBacking::createGraphicsLayer):
2747 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2748 * rendering/RenderLayerCompositor.cpp:
2749 (WebCore::RenderLayerCompositor::updateLayerCompositingState):
2751 2009-02-11 Simon Fraser <simon.fraser@apple.com>
2753 Reviewed by Dave Hyatt
2755 https://bugs.webkit.org/show_bug.cgi?id=23862
2757 Add a bit on RenderStyle that gets set when running accelerated
2758 transitions of transform or opacity. These ensure that styles
2759 compare as different during the transition, so that interruption
2760 can be detected reliably.
2762 * page/animation/ImplicitAnimation.cpp:
2763 (WebCore::ImplicitAnimation::animate):
2764 * rendering/style/RenderStyle.h:
2765 (WebCore::InheritedFlags::isRunningAcceleratedAnimation):
2766 (WebCore::InheritedFlags::setIsRunningAcceleratedAnimation):
2767 * rendering/style/StyleRareNonInheritedData.cpp:
2768 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2769 (WebCore::StyleRareNonInheritedData::operator==):
2770 * rendering/style/StyleRareNonInheritedData.h:
2772 2009-02-11 David Hyatt <hyatt@apple.com>
2774 Eliminate the virtual position() function from RenderObject. Rename the position() overrides
2775 in RenderText and RenderBox to positionLineBox and devirtualize them.
2777 Patch the one call site to just check for isText() and isBox() and call the methods directly.
2779 Remove some unnecessary overrides of position() on table sections and rows.
2781 Reviewed by Simon Fraser
2783 * rendering/RenderBox.cpp:
2784 (WebCore::RenderBox::positionLineBox):
2785 * rendering/RenderBox.h:
2786 * rendering/RenderObject.h:
2787 * rendering/RenderSVGRoot.cpp:
2788 * rendering/RenderSVGRoot.h:
2789 * rendering/RenderTableRow.h:
2790 (WebCore::RenderTableRow::lineHeight):
2791 * rendering/RenderTableSection.h:
2792 (WebCore::RenderTableSection::lineHeight):
2793 * rendering/RenderText.cpp:
2794 (WebCore::RenderText::positionLineBox):
2795 * rendering/RenderText.h:
2796 * rendering/bidi.cpp:
2797 (WebCore::RenderBlock::computeVerticalPositionsForLine):
2799 2009-02-11 Dimitri Glazkov <dglazkov@chromium.org>
2801 Reviewed by Eric Seidel.
2803 https://bugs.webkit.org/show_bug.cgi?id=23901
2804 Add HTML options/collections V8 custom bindings.
2806 * bindings/v8/custom/V8HTMLCollectionCustom.cpp: Added.
2807 (WebCore::getNamedItems):
2809 (WebCore::NAMED_PROPERTY_GETTER):
2810 (WebCore::CALLBACK_FUNC_DECL):
2811 * bindings/v8/custom/V8HTMLFormElementCustom.cpp: Added.
2812 (WebCore::NAMED_PROPERTY_GETTER):
2813 * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
2814 (WebCore::ACCESSOR_GETTER):
2815 (WebCore::ACCESSOR_SETTER):
2816 (WebCore::CALLBACK_FUNC_DECL):
2817 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
2818 (WebCore::CALLBACK_FUNC_DECL):
2819 (WebCore::ACCESSOR_SETTER):
2820 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: Added.
2821 (WebCore::CALLBACK_FUNC_DECL):
2822 (WebCore::removeElement):
2823 * bindings/v8/custom/V8HTMLSelectElementCustom.h: Added.
2824 * bindings/v8/custom/V8NamedNodesCollection.cpp: Added.
2825 (WebCore::V8NamedNodesCollection::item):
2826 (WebCore::V8NamedNodesCollection::itemWithName):
2827 * bindings/v8/custom/V8NamedNodesCollection.h: Added.
2828 (WebCore::V8NamedNodesCollection::V8NamedNodesCollection):
2829 (WebCore::V8NamedNodesCollection::length):
2831 2009-02-11 Dimitri Dupuis-latour <dupuislatour@apple.com>
2833 Added a preference to disable some Inspector's panels (rdar://6419624, rdar://6419645).
2834 This is controlled via the 'WebKitInspectorHiddenPanels' key; if nothing is specified, all panels are shown.
2836 Reviewed by Timothy Hatcher.
2838 * inspector/InspectorClient.h:
2839 * inspector/InspectorController.cpp:
2840 (WebCore::hiddenPanels):
2841 (WebCore::InspectorController::hiddenPanels):
2842 (WebCore::InspectorController::windowScriptObjectAvailable):
2843 * inspector/InspectorController.h:
2844 * inspector/front-end/inspector.js:
2845 (WebInspector.loaded):
2846 * loader/EmptyClients.h:
2847 (WebCore::EmptyInspectorClient::hiddenPanels):
2849 2009-02-11 David Hyatt <hyatt@apple.com>
2851 Combine RenderObject::element() and RenderObject::node() into a single function.
2852 node() now has the "anonymous bit" checking behavior of element() and will
2853 return 0 for anonymous content. This patch switches all callers of element()
2854 to node() and patches old callers of node() to deal with situations where they
2855 did not expect node() to be 0. A bunch of node() calls were calling stuff on
2856 Document that they clearly didn't intend, so overall this is a nice improvement.
2858 Reviewed by Sam Weinig
2860 * dom/ContainerNode.cpp:
2861 (WebCore::ContainerNode::getUpperLeftCorner):
2863 (WebCore::Element::offsetParent):
2865 (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
2866 * editing/ModifySelectionListLevel.cpp:
2867 (WebCore::getStartEndListChildren):
2868 (WebCore::IncreaseSelectionListLevelCommand::doApply):
2869 (WebCore::DecreaseSelectionListLevelCommand::doApply):
2870 * editing/TextIterator.cpp:
2871 (WebCore::TextIterator::advance):
2872 * editing/VisiblePosition.cpp:
2873 (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
2874 (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
2875 * editing/visible_units.cpp:
2876 (WebCore::startPositionForLine):
2877 (WebCore::endPositionForLine):
2878 * page/AXObjectCache.cpp:
2879 (WebCore::AXObjectCache::get):
2880 * page/AccessibilityList.cpp:
2881 (WebCore::AccessibilityList::isUnorderedList):
2882 (WebCore::AccessibilityList::isOrderedList):
2883 (WebCore::AccessibilityList::isDefinitionList):
2884 * page/AccessibilityListBox.cpp:
2885 (WebCore::AccessibilityListBox::doAccessibilityHitTest):
2886 * page/AccessibilityRenderObject.cpp:
2887 (WebCore::AccessibilityRenderObject::isPasswordField):
2888 (WebCore::AccessibilityRenderObject::isFileUploadButton):
2889 (WebCore::AccessibilityRenderObject::isInputImage):
2890 (WebCore::AccessibilityRenderObject::isMultiSelect):
2891 (WebCore::AccessibilityRenderObject::isControl):
2892 (WebCore::AccessibilityRenderObject::getAttribute):
2893 (WebCore::AccessibilityRenderObject::anchorElement):
2894 (WebCore::AccessibilityRenderObject::actionElement):
2895 (WebCore::AccessibilityRenderObject::mouseButtonListener):
2896 (WebCore::AccessibilityRenderObject::helpText):
2897 (WebCore::AccessibilityRenderObject::textUnderElement):
2898 (WebCore::AccessibilityRenderObject::hasIntValue):
2899 (WebCore::AccessibilityRenderObject::intValue):
2900 (WebCore::AccessibilityRenderObject::labelElementContainer):
2901 (WebCore::AccessibilityRenderObject::title):
2902 (WebCore::AccessibilityRenderObject::accessibilityDescription):
2903 (WebCore::AccessibilityRenderObject::boundingBoxRect):
2904 (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
2905 (WebCore::AccessibilityRenderObject::titleUIElement):
2906 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
2907 (WebCore::AccessibilityRenderObject::text):
2908 (WebCore::AccessibilityRenderObject::ariaSelectedTextDOMRange):
2909 (WebCore::AccessibilityRenderObject::accessKey):
2910 (WebCore::AccessibilityRenderObject::setSelectedTextRange):
2911 (WebCore::AccessibilityRenderObject::url):
2912 (WebCore::AccessibilityRenderObject::isFocused):
2913 (WebCore::AccessibilityRenderObject::setFocused):
2914 (WebCore::AccessibilityRenderObject::setValue):
2915 (WebCore::AccessibilityRenderObject::isEnabled):
2916 (WebCore::AccessibilityRenderObject::visiblePositionRange):
2917 (WebCore::AccessibilityRenderObject::index):
2918 (WebCore::AccessibilityRenderObject::activeDescendant):
2919 (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
2920 (WebCore::AccessibilityRenderObject::observableObject):
2921 (WebCore::AccessibilityRenderObject::roleValue):
2922 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
2923 (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
2924 * page/AccessibilityTable.cpp:
2925 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
2926 (WebCore::AccessibilityTable::title):
2927 * page/AccessibilityTableCell.cpp:
2928 (WebCore::AccessibilityTableCell::titleUIElement):
2929 * page/AccessibilityTableColumn.cpp:
2930 (WebCore::AccessibilityTableColumn::headerObjectForSection):
2931 * page/AccessibilityTableRow.cpp:
2932 (WebCore::AccessibilityTableRow::headerObject):
2933 * page/EventHandler.cpp:
2934 (WebCore::EventHandler::dispatchMouseEvent):
2935 (WebCore::EventHandler::canMouseDownStartSelect):
2936 (WebCore::EventHandler::canMouseDragExtendSelect):
2937 (WebCore::EventHandler::shouldDragAutoNode):
2939 (WebCore::Frame::searchForLabelsAboveCell):
2940 (WebCore::Frame::setFocusedNodeIfNeeded):
2941 * page/FrameView.cpp:
2942 (WebCore::FrameView::updateOverflowStatus):
2943 * page/animation/AnimationBase.cpp:
2944 (WebCore::AnimationBase::updateStateMachine):
2945 * page/animation/AnimationController.cpp:
2946 (WebCore::AnimationControllerPrivate::updateAnimationTimer):
2947 (WebCore::AnimationController::cancelAnimations):
2948 (WebCore::AnimationController::updateAnimations):
2949 * page/animation/KeyframeAnimation.cpp:
2950 (WebCore::KeyframeAnimation::KeyframeAnimation):
2951 (WebCore::KeyframeAnimation::endAnimation):
2952 * page/mac/AccessibilityObjectWrapper.mm:
2954 (AXAttributeStringSetHeadingLevel):
2955 * page/mac/FrameMac.mm:
2956 (WebCore::Frame::searchForNSLabelsAboveCell):
2957 * rendering/InlineFlowBox.cpp:
2958 (WebCore::InlineFlowBox::verticallyAlignBoxes):
2959 (WebCore::InlineFlowBox::paint):
2960 (WebCore::shouldDrawTextDecoration):
2961 * rendering/InlineTextBox.cpp:
2962 (WebCore::InlineTextBox::paintDocumentMarkers):
2963 * rendering/RenderBR.cpp:
2964 (WebCore::RenderBR::positionForCoordinates):
2965 * rendering/RenderBlock.cpp:
2966 (WebCore::RenderBlock::layoutBlock):
2967 (WebCore::RenderBlock::handleRunInChild):
2968 (WebCore::RenderBlock::paintObject):
2969 (WebCore::RenderBlock::isSelectionRoot):
2970 (WebCore::RenderBlock::rightmostPosition):
2971 (WebCore::RenderBlock::positionForBox):
2972 (WebCore::RenderBlock::positionForRenderer):
2973 (WebCore::RenderBlock::positionForCoordinates):
2974 (WebCore::RenderBlock::hasLineIfEmpty):
2975 (WebCore::RenderBlock::updateFirstLetter):
2976 (WebCore::RenderBlock::updateHitTestResult):
2977 (WebCore::RenderBlock::addFocusRingRects):
2978 * rendering/RenderBox.cpp:
2979 (WebCore::RenderBox::styleWillChange):
2980 (WebCore::RenderBox::updateBoxModelInfoFromStyle):
2981 (WebCore::RenderBox::paintRootBoxDecorations):
2982 (WebCore::RenderBox::positionForCoordinates):
2983 * rendering/RenderButton.cpp:
2984 (WebCore::RenderButton::updateFromElement):
2985 (WebCore::RenderButton::canHaveChildren):
2986 * rendering/RenderCounter.cpp:
2987 (WebCore::planCounter):
2988 * rendering/RenderFieldset.cpp:
2989 (WebCore::RenderFieldset::findLegend):
2990 * rendering/RenderFlexibleBox.cpp:
2991 (WebCore::RenderFlexibleBox::layoutVerticalBox):
2992 * rendering/RenderForeignObject.cpp:
2993 (WebCore::RenderForeignObject::translationForAttributes):
2994 (WebCore::RenderForeignObject::calculateLocalTransform):
2995 * rendering/RenderFrame.h:
2996 (WebCore::RenderFrame::element):
2997 * rendering/RenderImage.cpp:
2998 (WebCore::RenderImage::paintReplaced):
2999 (WebCore::RenderImage::imageMap):
3000 (WebCore::RenderImage::nodeAtPoint):
3001 (WebCore::RenderImage::updateAltText):
3002 * rendering/RenderInline.cpp:
3003 (WebCore::RenderInline::cloneInline):
3004 (WebCore::RenderInline::updateHitTestResult):
3005 * rendering/RenderLayer.cpp:
3006 (WebCore::RenderLayer::isTransparent):
3007 (WebCore::RenderLayer::scrollToOffset):
3008 (WebCore::RenderLayer::resize):
3009 (WebCore::RenderLayer::createScrollbar):
3010 (WebCore::RenderLayer::updateOverflowStatus):
3011 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
3012 (WebCore::RenderLayer::enclosingElement):
3013 (WebCore::RenderLayer::updateHoverActiveState):
3014 (WebCore::RenderLayer::updateScrollCornerStyle):
3015 (WebCore::RenderLayer::updateResizerStyle):
3016 * rendering/RenderLayer.h:
3017 (WebCore::RenderLayer::isRootLayer):
3018 * rendering/RenderListItem.cpp:
3019 (WebCore::getParentOfFirstLineBox):
3020 * rendering/RenderMarquee.cpp:
3021 (WebCore::RenderMarquee::marqueeSpeed):
3022 * rendering/RenderObject.cpp:
3023 (WebCore::RenderObject::RenderObject):
3024 (WebCore::RenderObject::isBody):
3025 (WebCore::RenderObject::isHR):
3026 (WebCore::RenderObject::isHTMLMarquee):
3027 (WebCore::RenderObject::isEditable):
3028 (WebCore::RenderObject::addPDFURLRect):
3029 (WebCore::RenderObject::showTreeForThis):
3030 (WebCore::RenderObject::draggableNode):
3031 (WebCore::RenderObject::hasOutlineAnnotation):
3032 (WebCore::RenderObject::positionForCoordinates):
3033 (WebCore::RenderObject::updateDragState):
3034 (WebCore::RenderObject::updateHitTestResult):
3035 (WebCore::RenderObject::getUncachedPseudoStyle):
3036 (WebCore::RenderObject::getTextDecorationColors):
3037 (WebCore::RenderObject::caretMaxOffset):
3038 (WebCore::RenderObject::offsetParent):
3039 * rendering/RenderObject.h:
3040 (WebCore::RenderObject::isRoot):
3041 (WebCore::RenderObject::isInlineContinuation):
3042 (WebCore::RenderObject::node):
3043 (WebCore::RenderObject::setNode):
3044 * rendering/RenderObjectChildList.cpp:
3045 (WebCore::RenderObjectChildList::destroyLeftoverChildren):
3046 * rendering/RenderPart.cpp:
3047 (WebCore::RenderPart::updateWidgetPosition):
3048 * rendering/RenderPartObject.cpp:
3049 (WebCore::RenderPartObject::updateWidget):
3050 (WebCore::RenderPartObject::viewCleared):
3051 * rendering/RenderPath.cpp:
3052 (WebCore::RenderPath::calculateLocalTransform):
3053 (WebCore::RenderPath::layout):
3054 (WebCore::RenderPath::paint):
3055 (WebCore::RenderPath::drawMarkersIfNeeded):
3056 * rendering/RenderReplaced.cpp:
3057 (WebCore::RenderReplaced::positionForCoordinates):
3058 (WebCore::RenderReplaced::isSelected):
3059 * rendering/RenderSVGGradientStop.cpp:
3060 (WebCore::RenderSVGGradientStop::gradientElement):
3061 * rendering/RenderSVGImage.cpp:
3062 (WebCore::RenderSVGImage::calculateLocalTransform):
3063 * rendering/RenderSVGInlineText.cpp:
3064 (WebCore::RenderSVGInlineText::positionForCoordinates):
3065 * rendering/RenderSVGRoot.cpp:
3066 (WebCore::RenderSVGRoot::layout):
3067 (WebCore::RenderSVGRoot::applyContentTransforms):
3068 (WebCore::RenderSVGRoot::paint):
3069 (WebCore::RenderSVGRoot::calcViewport):
3070 (WebCore::RenderSVGRoot::absoluteTransform):
3071 * rendering/RenderSVGText.cpp:
3072 (WebCore::RenderSVGText::calculateLocalTransform):
3073 (WebCore::RenderSVGText::layout):
3074 * rendering/RenderSVGTextPath.cpp:
3075 (WebCore::RenderSVGTextPath::layoutPath):
3076 (WebCore::RenderSVGTextPath::startOffset):
3077 (WebCore::RenderSVGTextPath::exactAlignment):
3078 (WebCore::RenderSVGTextPath::stretchMethod):
3079 * rendering/RenderSVGTransformableContainer.cpp:
3080 (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
3081 * rendering/RenderSVGViewportContainer.cpp:
3082 (WebCore::RenderSVGViewportContainer::calcViewport):
3083 (WebCore::RenderSVGViewportContainer::viewportTransform):
3084 (WebCore::RenderSVGViewportContainer::nodeAtPoint):
3085 * rendering/RenderTable.cpp:
3086 (WebCore::RenderTable::addChild):
3087 * rendering/RenderTableCell.cpp:
3088 (WebCore::RenderTableCell::updateFromElement):
3089 (WebCore::RenderTableCell::calcPrefWidths):
3090 * rendering/RenderTableCol.cpp:
3091 (WebCore::RenderTableCol::updateFromElement):
3092 * rendering/RenderTableRow.cpp:
3093 (WebCore::RenderTableRow::addChild):
3094 * rendering/RenderTableSection.cpp:
3095 (WebCore::RenderTableSection::addChild):
3096 * rendering/RenderText.cpp:
3097 (WebCore::RenderText::originalText):
3098 (WebCore::RenderText::positionForCoordinates):
3099 * rendering/RenderTextControlMultiLine.cpp:
3100 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
3101 * rendering/RenderTextControlSingleLine.cpp:
3102 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
3103 * rendering/RenderTextFragment.cpp:
3104 (WebCore::RenderTextFragment::originalText):
3105 (WebCore::RenderTextFragment::previousCharacter):
3106 * rendering/RenderTheme.cpp:
3107 (WebCore::RenderTheme::isActive):
3108 (WebCore::RenderTheme::isChecked):
3109 (WebCore::RenderTheme::isIndeterminate):
3110 (WebCore::RenderTheme::isEnabled):
3111 (WebCore::RenderTheme::isFocused):
3112 (WebCore::RenderTheme::isPressed):
3113 (WebCore::RenderTheme::isReadOnlyControl):
3114 (WebCore::RenderTheme::isHovered):
3115 * rendering/RenderThemeMac.mm:
3116 (WebCore::RenderThemeMac::updatePressedState):
3117 (WebCore::RenderThemeMac::paintMediaFullscreenButton):
3118 (WebCore::RenderThemeMac::paintMediaMuteButton):
3119 (WebCore::RenderThemeMac::paintMediaPlayButton):
3120 (WebCore::RenderThemeMac::paintMediaSeekBackButton):
3121 (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
3122 (WebCore::RenderThemeMac::paintMediaSliderTrack):
3123 (WebCore::RenderThemeMac::paintMediaSliderThumb):
3124 (WebCore::RenderThemeMac::paintMediaTimelineContainer):
3125 (WebCore::RenderThemeMac::paintMediaCurrentTime):
3126 (WebCore::RenderThemeMac::paintMediaTimeRemaining):
3127 * rendering/RenderThemeSafari.cpp:
3128 (WebCore::RenderThemeSafari::paintMediaMuteButton):
3129 (WebCore::RenderThemeSafari::paintMediaPlayButton):
3130 (WebCore::RenderThemeSafari::paintMediaSliderTrack):
3131 * rendering/RenderTreeAsText.cpp:
3132 (WebCore::operator<<):
3133 (WebCore::writeSelection):
3134 * rendering/RenderWidget.cpp:
3135 (WebCore::RenderWidget::setWidgetGeometry):
3136 (WebCore::RenderWidget::updateWidgetPosition):
3137 (WebCore::RenderWidget::nodeAtPoint):
3138 * rendering/RootInlineBox.cpp:
3139 (WebCore::isEditableLeaf):
3140 * rendering/SVGRenderSupport.cpp:
3141 (WebCore::prepareToRenderSVGContent):
3142 * rendering/SVGRenderTreeAsText.cpp:
3144 * rendering/SVGRootInlineBox.cpp:
3145 (WebCore::SVGRootInlineBox::buildLayoutInformation):
3146 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
3147 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
3148 (WebCore::SVGRootInlineBox::buildTextChunks):
3149 * rendering/style/SVGRenderStyle.cpp:
3150 (WebCore::SVGRenderStyle::cssPrimitiveToLength):
3152 (WebCore::SVGTextRunWalker::walk):
3153 (WebCore::floatWidthOfSubStringUsingSVGFont):
3154 (WebCore::Font::drawTextUsingSVGFont):
3155 * svg/SVGTextContentElement.cpp:
3156 (WebCore::findInlineTextBoxInTextChunks):
3157 * svg/graphics/SVGPaintServer.cpp:
3158 (WebCore::SVGPaintServer::fillPaintServer):
3159 (WebCore::SVGPaintServer::strokePaintServer):
3161 2009-02-11 Brady Eidson <beidson@apple.com>
3163 Reviewed by Darin Adler
3165 <rdar://problem/3541409> - Further FrameLoader and page cache cleanup
3167 * history/CachedFrame.cpp:
3168 (WebCore::CachedFrame::restore): Moved updatePlatformScriptObjects() here.
3170 * loader/FrameLoader.cpp:
3171 (WebCore::FrameLoader::commitProvisionalLoad): Rolled opened() into this method. This method was
3172 the only caller and - in the future - will benefit from doing parts of opened()'s work differently.
3173 (WebCore::FrameLoader::open): Split off per-frame logic into open(CachedFrame&) method.
3174 (WebCore::FrameLoader::closeAndRemoveChild): Added. Do the non-tree related cleanup that
3175 FrameTree::removeChild() used to do.
3176 (WebCore::FrameLoader::detachFromParent): Call ::closeAndRemoveChild() instead.
3177 (WebCore::FrameLoader::cachePageForHistoryItem): Perform the "can cache page" check here.
3178 * loader/FrameLoader.h:
3180 * page/FrameTree.cpp:
3181 (WebCore::FrameTree::removeChild): Just remove the Frame from the tree. Closing it and other
3182 cleanup is the responsibility of the FrameLoader.
3184 (WebCore::FrameTree::detachFromParent): Added to just clear a Frame's parent pointer
3186 2009-02-11 Scott Violet <sky@google.com>
3188 Reviewed by Eric Seidel.
3190 https://bugs.webkit.org/show_bug.cgi?id=23882
3191 GraphicsContextSkia draws round rects as solid rects
3193 Fixes two bugs in Skia's GraphicsContext::fillRoundedRect:
3194 . fillRoundedRect had an extra call to fillRect, resulting in always
3195 drawing a solid rectangle.
3196 . if the total radius along a given axis is greater than the size of
3197 the axis to draw, a solid rect should be drawn.
3199 The layout tests LayoutTests/fast/css/shadow-multiple.html and
3200 LayoutTests/fast/box-shadow/basic-shadows.html cover this.
3202 * platform/graphics/skia/GraphicsContextSkia.cpp:
3203 (WebCore::GraphicsContext::fillRoundedRect):
3205 2009-02-11 Julien Chaffraix <jchaffraix@webkit.org>
3207 Reviewed by Eric Seidel.
3209 Bug 23536: Auto-generate HTMLElementFactory
3211 Remove the HTMLElementFactory files. Farewell.
3213 * html/HTMLElementFactory.cpp: Removed.
3214 * html/HTMLElementFactory.h: Removed.
3216 2009-02-11 Julien Chaffraix <jchaffraix@webkit.org>
3218 Reviewed by Eric Seidel.
3220 Bug 23536: Auto-generate HTMLElementFactory
3222 Make the platform auto-generate the HTMLElementFactory.
3224 * DerivedSources.make:
3228 * WebCore.vcproj/WebCore.vcproj:
3229 * WebCore.xcodeproj/project.pbxproj:
3230 * WebCoreSources.bkl:
3233 2009-02-11 Sam Weinig <sam@webkit.org>
3235 Reviewed by David Hyatt.
3237 Remove unneeded ASSERTS.
3239 * rendering/RenderBox.h:
3240 (WebCore::RenderBox::width):
3241 (WebCore::RenderBox::height):
3242 (WebCore::RenderBox::size):
3243 (WebCore::RenderBox::frameRect):
3245 2009-02-11 Simon Fraser <simon.fraser@apple.com>
3247 Reviewed by Dave Hyatt
3249 Add function to RenderStyle to ask whether a background image has been specified.
3251 * rendering/style/RenderStyle.h:
3252 (WebCore::InheritedFlags::hasBackgroundImage):
3254 2009-02-11 Simon Fraser <simon.fraser@apple.com>
3256 Reviewed by Dave Hyatt
3258 https://bugs.webkit.org/show_bug.cgi?id=23548
3260 When opacity or transform change on an object which has a compositing layer,
3261 avoid repainting the layer.
3263 Added a new StyleDifference value, StyleDifferenceRecompositeLayer, which indicates
3264 that the only thing styleChanged() has to do is to update composited properties of
3265 the layer. RenderStyle::diff() now has an out param for a bitmask of "context sensitive"
3266 properties, currently for opacity and transform. When one of these changes, we need
3267 to see if we have a compositing layer before we decide whether to layout/repaint,
3268 or just update the composited layer, via adjustStyleDifference().
3270 * rendering/RenderObject.cpp:
3271 (WebCore::RenderObject::adjustStyleDifference):
3272 (WebCore::RenderObject::setStyle):
3273 (WebCore::RenderObject::styleDidChange):
3274 * rendering/RenderObject.h:
3275 * rendering/style/RenderStyle.cpp:
3276 (WebCore::RenderStyle::diff):
3277 * rendering/style/RenderStyle.h:
3278 * rendering/style/RenderStyleConstants.h:
3281 2009-02-11 Alexey Proskuryakov <ap@webkit.org>
3283 Reviewed by Darin Adler.
3285 <rdar://problem/6562920> Pasted text should be normalized to NFC
3287 Testing requires putting non-HTML content in pasteboard, so it cannot be done with WebKit alone.
3289 * platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::plainText): Route the text through
3290 -[NSString precomposedStringWithCanonicalMapping].
3292 2009-02-10 Chris Marrin <cmarrin@apple.com>
3294 Reviewed by Simon Fraser.
3296 https://bugs.webkit.org/show_bug.cgi?id=23883
3298 Added new TransformOperation subclasses and methods to existing ones
3301 * WebCore.xcodeproj/project.pbxproj:
3302 * platform/graphics/transforms/IdentityTransformOperation.h:
3303 (WebCore::IdentityTransformOperation::isAffine):
3304 * platform/graphics/transforms/Matrix3DTransformOperation.cpp: Added.
3305 (WebCore::Matrix3DTransformOperation::blend):
3306 * platform/graphics/transforms/Matrix3DTransformOperation.h: Added.
3307 (WebCore::Matrix3DTransformOperation::create):
3308 (WebCore::Matrix3DTransformOperation::isIdentity):
3309 (WebCore::Matrix3DTransformOperation::isAffine):
3310 (WebCore::Matrix3DTransformOperation::getOperationType):
3311 (WebCore::Matrix3DTransformOperation::isSameType):
3312 (WebCore::Matrix3DTransformOperation::operator==):
3313 (WebCore::Matrix3DTransformOperation::apply):
3314 (WebCore::Matrix3DTransformOperation::Matrix3DTransformOperation):
3315 * platform/graphics/transforms/MatrixTransformOperation.h:
3316 (WebCore::MatrixTransformOperation::isAffine):
3317 (WebCore::MatrixTransformOperation::apply):
3318 * platform/graphics/transforms/PerspectiveTransformOperation.cpp: Added.
3319 (WebCore::PerspectiveTransformOperation::blend):
3320 * platform/graphics/transforms/PerspectiveTransformOperation.h: Added.
3321 (WebCore::PerspectiveTransformOperation::create):
3322 (WebCore::PerspectiveTransformOperation::isIdentity):
3323 (WebCore::PerspectiveTransformOperation::isAffine):
3324 (WebCore::PerspectiveTransformOperation::getOperationType):
3325 (WebCore::PerspectiveTransformOperation::isSameType):
3326 (WebCore::PerspectiveTransformOperation::operator==):
3327 (WebCore::PerspectiveTransformOperation::apply):
3328 (WebCore::PerspectiveTransformOperation::PerspectiveTransformOperation):
3329 * platform/graphics/transforms/RotateTransformOperation.cpp:
3330 (WebCore::RotateTransformOperation::blend):
3331 * platform/graphics/transforms/RotateTransformOperation.h:
3332 (WebCore::RotateTransformOperation::create):
3333 (WebCore::RotateTransformOperation::angle):
3334 (WebCore::RotateTransformOperation::isAffine):
3335 (WebCore::RotateTransformOperation::operator==):
3336 (WebCore::RotateTransformOperation::apply):
3337 (WebCore::RotateTransformOperation::RotateTransformOperation):
3338 * platform/graphics/transforms/ScaleTransformOperation.cpp:
3339 (WebCore::ScaleTransformOperation::blend):
3340 * platform/graphics/transforms/ScaleTransformOperation.h:
3341 (WebCore::ScaleTransformOperation::create):
3342 (WebCore::ScaleTransformOperation::z):
3343 (WebCore::ScaleTransformOperation::isIdentity):
3344 (WebCore::ScaleTransformOperation::isAffine):
3345 (WebCore::ScaleTransformOperation::operator==):
3346 (WebCore::ScaleTransformOperation::apply):
3347 (WebCore::ScaleTransformOperation::ScaleTransformOperation):
3348 * platform/graphics/transforms/SkewTransformOperation.h:
3349 (WebCore::SkewTransformOperation::isAffine):
3350 * platform/graphics/transforms/TransformOperation.h:
3351 (WebCore::TransformOperation::):
3352 (WebCore::TransformOperation::is3DOperation):
3353 * platform/graphics/transforms/TransformOperations.h:
3354 (WebCore::TransformOperations::isAffine):
3355 (WebCore::TransformOperations::has3DOperation):
3356 * platform/graphics/transforms/TranslateTransformOperation.cpp:
3357 (WebCore::TranslateTransformOperation::blend):
3358 * platform/graphics/transforms/TranslateTransformOperation.h:
3359 (WebCore::TranslateTransformOperation::create):
3360 (WebCore::TranslateTransformOperation::z):
3361 (WebCore::TranslateTransformOperation::isIdentity):
3362 (WebCore::TranslateTransformOperation::isAffine):
3363 (WebCore::TranslateTransformOperation::operator==):
3364 (WebCore::TranslateTransformOperation::apply):
3365 (WebCore::TranslateTransformOperation::TranslateTransformOperation):
3367 2009-02-11 David Hyatt <hyatt@apple.com>
3369 Move createAnonymousBlock() to RenderBlock. Since anonymous blocks are always parented to some other block,
3370 we can move this function to RenderBlock. Fix a couple of call sites as a result of this restriction.
3372 Reviewed by Simon Fraser
3374 * rendering/RenderBlock.cpp:
3375 (WebCore::RenderBlock::createAnonymousBlock):
3376 * rendering/RenderBlock.h:
3377 * rendering/RenderInline.cpp:
3378 (WebCore::RenderInline::childBecameNonInline):
3379 * rendering/RenderObject.cpp:
3380 (WebCore::RenderObject::handleDynamicFloatPositionChange):
3381 * rendering/RenderObject.h:
3383 2009-02-11 David Hyatt <hyatt@apple.com>
3385 https://bugs.webkit.org/show_bug.cgi?id=23895
3387 Remove two complete nonsense lines that I accidentally added from a cut and paste error. This
3388 restores the original logic.
3390 Reviewed by Simon Fraser
3392 * rendering/RenderBox.cpp:
3393 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
3395 2009-02-11 David Hyatt <hyatt@apple.com>
3397 Rename getBaselineOfFirstLineBox to firstLineBoxBaseline. Rename getBaselineOfLastLineBox to
3398 lastLineBoxBaseline. Remove the functions from RenderObject and add them to RenderBox instead.
3400 Reviewed by Eric Seidel
3402 * rendering/RenderBlock.cpp:
3403 (WebCore::RenderBlock::baselinePosition):
3404 (WebCore::RenderBlock::firstLineBoxBaseline):
3405 (WebCore::RenderBlock::lastLineBoxBaseline):
3406 * rendering/RenderBlock.h:
3407 * rendering/RenderBox.h:
3408 (WebCore::RenderBox::firstLineBoxBaseline):
3409 (WebCore::RenderBox::lastLineBoxBaseline):
3410 * rendering/RenderFlexibleBox.cpp:
3411 (WebCore::RenderFlexibleBox::layoutHorizontalBox):
3412 * rendering/RenderObject.h:
3413 * rendering/RenderTable.cpp:
3414 (WebCore::RenderTable::firstLineBoxBaseline):
3415 * rendering/RenderTable.h:
3416 * rendering/RenderTableCell.cpp:
3417 (WebCore::RenderTableCell::baselinePosition):
3418 * rendering/RenderTableSection.cpp:
3419 (WebCore::RenderTableSection::firstLineBoxBaseline):
3420 * rendering/RenderTableSection.h:
3422 2009-02-11 Eric Carlson <eric.carlson@apple.com>
3424 Reviewed by Simon Fraser
3426 https://bugs.webkit.org/show_bug.cgi?id=23877
3427 Allow port to disable progress events from <video> and <audio> elements
3429 * html/HTMLMediaElement.cpp: Initialize m_sendProgressEvents.
3430 (WebCore::HTMLMediaElement::HTMLMediaElement): Don't post progress events if m_sendProgressEvents is false.
3431 (WebCore::HTMLMediaElement::initAndDispatchProgressEvent): Ditto.
3432 (WebCore::HTMLMediaElement::load): Ditto.
3433 * html/HTMLMediaElement.h: Add m_sendProgressEvents
3435 2009-02-11 Adam Roben <aroben@apple.com>
3439 * DerivedSources.cpp: Removed SVGElementFactory.cpp, since including
3440 it leads to ambiguities for symbols like "aTag", which exist in both
3441 the HTMLNames and SVGNames namespaces.
3443 * WebCore.vcproj/WebCore.vcproj: Added SVGElementFactory.cpp to the
3444 project directly. VS also decided to reformat this file a little bit.
3446 2009-02-10 Julien Chaffraix <jchaffraix@webkit.org>
3448 Reviewed by Eric Seidel.
3450 Bug 23536: Auto-generate HTMLElementFactory
3452 Those are the last auto-generation bits needed to have a working generated HTMLElementFactory:
3454 - Added a new option mapToTagName that enables a tag to use another's options and tagName (<image>
3455 uses imgTag for example) and wired the code generation to be consistent with the current factory.
3457 - Disabled dashboard compatibility check for HTMLElementFactory as it would make at least one test case fail.
3459 - Pass the QualifiedName down to the Element constructor for shared constructors to make the generated code as
3460 close as possible to the current one. We will pass the QualifiedName for all Element in a forthcoming patch.
3462 * dom/make_names.pl: Did all the above points and tweaked the code generation to match the current HTMLElementFactory
3463 as closely as possible.
3465 * html/HTMLElementFactory.cpp:
3466 (WebCore::quoteConstructor):
3467 * html/HTMLQuoteElement.cpp:
3468 (WebCore::HTMLQuoteElement::HTMLQuoteElement): Moved setUsesBeforeAfterRules to HTMLQuoteElement' constructor because some
3469 part of the code creates elements without using the HTMLElementFactory. Also added a FIXME as it is not the right place.
3471 * html/HTMLTagNames.in: Corrected <image> parameters.
3473 2009-02-10 David Hyatt <hyatt@apple.com>
3475 Fix for pixel test regression in fast/text. Make sure not to add in
3476 the borderTop and paddingTop of the block to the baseline when painting
3477 strict mode text decorations.
3479 Reviewed by Mark Rowe
3481 * rendering/InlineFlowBox.cpp:
3482 (WebCore::InlineFlowBox::paintTextDecorations):
3483 * rendering/InlineFlowBox.h:
3485 2009-02-10 Jon Honeycutt <jhoneycutt@apple.com>
3487 Windows build fix after r40837.
3491 * DerivedSources.cpp:
3493 2009-02-10 Jon Honeycutt <jhoneycutt@apple.com>
3495 <rdar://6349412> REGRESSION(r37204): Page is not repainted during and
3498 Reviewed by Steve Falkenburg.
3500 * platform/ScrollView.cpp:
3501 (WebCore::ScrollView::scrollContents): Don't repaint the pan scroll
3502 icon rect immediately; we will paint after the view has been scrolled.
3504 2009-02-10 Oliver Hunt <oliver@apple.com>
3506 Reviewed by Adele Peterson.
3508 <rdar://problem/6156755> onMouseOver events do not fire properly for cross frame drag and drop
3510 This problem was caused by incorrectly ignoring whether or not the
3511 default behaviour of the mousedown event was suppressed. If a
3512 mousedown handler in a frame prevents default handling then the
3513 subsequent mousemove events fired for the drag should not be
3514 captured by that frame, should the mouse move out of its bounds.
3516 Test: fast/events/mouse-drag-from-frame.html
3518 * page/EventHandler.cpp:
3519 (WebCore::EventHandler::EventHandler):
3520 (WebCore::EventHandler::clear):
3521 (WebCore::EventHandler::handleMouseReleaseEvent):
3522 Reset new m_capturesDragging flag
3524 (WebCore::EventHandler::handleMousePressEvent):
3525 Respect the m_capturesDragging flag when we propagate
3526 a mousedown event to a subframe.
3528 * page/EventHandler.h:
3529 (WebCore::EventHandler::capturesDragging):
3531 2009-02-10 Kevin Ollivier <kevino@theolliviers.com>
3533 wx build fixes for recent changes to TransformationMatrix and DOMElement.
3535 * WebCoreSources.bkl:
3537 * platform/graphics/transforms/TransformationMatrix.h:
3538 * platform/graphics/wx/TransformationMatrixWx.cpp:
3539 (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
3541 2009-02-10 David Hyatt <hyatt@apple.com>
3543 Some renames on line boxes. xPos()/yPos() -> x()/y(). setXPos()/setYPos() -> setX()/setY(). m_object/object() -> m_renderer/renderer(). textObject() -> textRenderer().
3545 Reviewed by Sam Weinig
3548 (WebCore::Position::upstream):
3549 (WebCore::Position::downstream):
3550 * editing/VisiblePosition.cpp:
3551 (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
3552 (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
3553 (WebCore::VisiblePosition::localCaretRect):
3554 * editing/visible_units.cpp:
3555 (WebCore::startPositionForLine):
3556 (WebCore::endPositionForLine):
3557 (WebCore::previousLinePosition):
3558 (WebCore::nextLinePosition):
3559 * rendering/EllipsisBox.cpp:
3560 (WebCore::EllipsisBox::paint):
3561 (WebCore::EllipsisBox::nodeAtPoint):
3562 * rendering/InlineBox.cpp:
3563 (WebCore::InlineBox::showTreeForThis):
3564 (WebCore::InlineBox::height):
3565 (WebCore::InlineBox::caretMinOffset):
3566 (WebCore::InlineBox::caretMaxOffset):
3567 (WebCore::InlineBox::deleteLine):
3568 (WebCore::InlineBox::extractLine):
3569 (WebCore::InlineBox::attachLine):
3570 (WebCore::InlineBox::adjustPosition):
3571 (WebCore::InlineBox::paint):
3572 (WebCore::InlineBox::nodeAtPoint):
3573 (WebCore::InlineBox::selectionState):
3574 (WebCore::InlineBox::canAccommodateEllipsis):
3575 * rendering/InlineBox.h:
3576 (WebCore::InlineBox::InlineBox):
3577 (WebCore::InlineBox::renderer):
3578 (WebCore::InlineBox::setX):
3579 (WebCore::InlineBox::x):
3580 (WebCore::InlineBox::setY):
3581 (WebCore::InlineBox::y):
3582 (WebCore::InlineBox::topOverflow):
3583 (WebCore::InlineBox::bottomOverflow):
3584 (WebCore::InlineBox::leftOverflow):
3585 (WebCore::InlineBox::rightOverflow):
3586 (WebCore::InlineBox::visibleToHitTesting):
3587 (WebCore::InlineBox::boxModelObject):
3588 * rendering/InlineFlowBox.cpp:
3589 (WebCore::InlineFlowBox::height):
3590 (WebCore::InlineFlowBox::addToLine):
3591 (WebCore::InlineFlowBox::removeLineBoxFromRenderObject):
3592 (WebCore::InlineFlowBox::extractLineBoxFromRenderObject):
3593 (WebCore::InlineFlowBox::attachLineBoxToRenderObject):
3594 (WebCore::InlineFlowBox::rendererLineBoxes):
3595 (WebCore::InlineFlowBox::onEndChain):
3596 (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
3597 (WebCore::InlineFlowBox::placeBoxesHorizontally):
3598 (WebCore::InlineFlowBox::verticallyAlignBoxes):
3599 (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
3600 (WebCore::verticalPositionForBox):
3601 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3602 (WebCore::InlineFlowBox::placeBoxesVertically):
3603 (WebCore::InlineFlowBox::nodeAtPoint):
3604 (WebCore::InlineFlowBox::paint):
3605 (WebCore::InlineFlowBox::paintFillLayer):
3606 (WebCore::InlineFlowBox::paintBoxShadow):
3607 (WebCore::InlineFlowBox::paintBoxDecorations):
3608 (WebCore::InlineFlowBox::paintMask):
3609 (WebCore::InlineFlowBox::paintTextDecorations):
3610 * rendering/InlineFlowBox.h:
3611 (WebCore::InlineFlowBox::borderLeft):
3612 (WebCore::InlineFlowBox::borderRight):
3613 (WebCore::InlineFlowBox::borderTop):
3614 (WebCore::InlineFlowBox::borderBottom):
3615 (WebCore::InlineFlowBox::baseline):
3616 * rendering/InlineTextBox.cpp:
3617 (WebCore::InlineTextBox::height):
3618 (WebCore::InlineTextBox::selectionState):
3619 (WebCore::InlineTextBox::selectionRect):
3620 (WebCore::InlineTextBox::deleteLine):
3621 (WebCore::InlineTextBox::extractLine):
3622 (WebCore::InlineTextBox::attachLine):
3623 (WebCore::InlineTextBox::placeEllipsisBox):
3624 (WebCore::InlineTextBox::isLineBreak):
3625 (WebCore::InlineTextBox::nodeAtPoint):
3626 (WebCore::InlineTextBox::paint):
3627 (WebCore::InlineTextBox::selectionStartEnd):
3628 (WebCore::InlineTextBox::paintSelection):
3629 (WebCore::InlineTextBox::paintCompositionBackground):
3630 (WebCore::InlineTextBox::paintCustomHighlight):
3631 (WebCore::InlineTextBox::paintDecoration):
3632 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
3633 (WebCore::InlineTextBox::paintTextMatchMarker):
3634 (WebCore::InlineTextBox::paintDocumentMarkers):
3635 (WebCore::InlineTextBox::paintCompositionUnderline):
3636 (WebCore::InlineTextBox::textPos):
3637 (WebCore::InlineTextBox::offsetForPosition):
3638 (WebCore::InlineTextBox::positionForOffset):
3639 * rendering/InlineTextBox.h:
3640 (WebCore::InlineTextBox::textRenderer):
3641 * rendering/ListMarkerBox.cpp:
3642 (WebCore::ListMarkerBox::isText):
3643 * rendering/RenderBlock.cpp:
3644 (WebCore::RenderBlock::paintEllipsisBoxes):
3645 (WebCore::RenderBlock::lowestPosition):
3646 (WebCore::RenderBlock::rightmostPosition):
3647 (WebCore::RenderBlock::leftmostPosition):
3648 (WebCore::RenderBlock::positionForBox):
3649 (WebCore::RenderBlock::positionForCoordinates):
3650 (WebCore::RenderBlock::getBaselineOfFirstLineBox):
3651 (WebCore::RenderBlock::getBaselineOfLastLineBox):
3652 (WebCore::RenderBlock::adjustForBorderFit):
3653 (WebCore::RenderBlock::addFocusRingRects):
3654 * rendering/RenderBox.cpp:
3655 (WebCore::RenderBox::paintCustomHighlight):
3656 (WebCore::RenderBox::position):
3657 (WebCore::RenderBox::containingBlockWidthForPositioned):
3658 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
3659 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
3660 * rendering/RenderBoxModelObject.cpp:
3661 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
3662 * rendering/RenderFlexibleBox.cpp:
3663 (WebCore::RenderFlexibleBox::layoutVerticalBox):
3664 * rendering/RenderInline.cpp:
3665 (WebCore::RenderInline::absoluteRects):
3666 (WebCore::RenderInline::absoluteQuads):
3667 (WebCore::RenderInline::offsetLeft):
3668 (WebCore::RenderInline::offsetTop):
3669 (WebCore::RenderInline::linesBoundingBox):
3670 (WebCore::RenderInline::relativePositionedInlineOffset):
3671 (WebCore::RenderInline::addFocusRingRects):
3672 (WebCore::RenderInline::paintOutline):
3673 * rendering/RenderLayer.cpp:
3674 (WebCore::RenderLayer::localBoundingBox):
3675 * rendering/RenderSVGTSpan.cpp:
3676 (WebCore::RenderSVGTSpan::absoluteRects):
3677 (WebCore::RenderSVGTSpan::absoluteQuads):
3678 * rendering/RenderSVGText.cpp:
3679 (WebCore::RenderSVGText::absoluteRects):
3680 (WebCore::RenderSVGText::absoluteQuads):
3681 (WebCore::RenderSVGText::relativeBBox):
3682 * rendering/RenderSVGTextPath.cpp:
3683 (WebCore::RenderSVGTextPath::absoluteRects):
3684 (WebCore::RenderSVGTextPath::absoluteQuads):
3685 * rendering/RenderText.cpp:
3686 (WebCore::RenderText::absoluteRects):
3687 (WebCore::RenderText::absoluteRectsForRange):
3688 (WebCore::RenderText::absoluteQuads):
3689 (WebCore::RenderText::absoluteQuadsForRange):
3690 (WebCore::RenderText::localCaretRect):
3691 (WebCore::RenderText::linesBoundingBox):
3692 * rendering/RootInlineBox.cpp:
3693 (WebCore::RootInlineBox::height):
3694 (WebCore::RootInlineBox::clearTruncation):
3695 (WebCore::RootInlineBox::placeEllipsis):
3696 (WebCore::RootInlineBox::paintEllipsisBox):
3697 (WebCore::RootInlineBox::addHighlightOverflow):
3698 (WebCore::RootInlineBox::paintCustomHighlight):
3699 (WebCore::RootInlineBox::paint):
3700 (WebCore::RootInlineBox::nodeAtPoint):
3701 (WebCore::RootInlineBox::childRemoved):
3702 (WebCore::RootInlineBox::fillLineSelectionGap):
3703 (WebCore::RootInlineBox::block):
3704 (WebCore::isEditableLeaf):
3705 (WebCore::RootInlineBox::closestLeafChildForXPos):
3706 (WebCore::RootInlineBox::setVerticalOverflowPositions):
3707 * rendering/RootInlineBox.h:
3708 (WebCore::RootInlineBox::bottomOverflow):
3709 (WebCore::RootInlineBox::floats):
3710 (WebCore::RootInlineBox::setHorizontalOverflowPositions):
3711 (WebCore::RootInlineBox::setVerticalSelectionPositions):
3712 * rendering/SVGCharacterLayoutInfo.cpp:
3713 (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
3714 * rendering/SVGInlineTextBox.cpp:
3715 (WebCore::SVGInlineTextBox::calculateGlyphWidth):
3716 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
3717 (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
3718 (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
3719 (WebCore::SVGInlineTextBox::nodeAtPoint):
3720 (WebCore::SVGInlineTextBox::paintCharacters):
3721 (WebCore::SVGInlineTextBox::paintSelection):
3722 (WebCore::SVGInlineTextBox::paintDecoration):
3723 * rendering/SVGRenderTreeAsText.cpp:
3724 (WebCore::writeSVGInlineTextBox):
3725 * rendering/SVGRootInlineBox.cpp:
3726 (WebCore::SVGRootInlineBoxPaintWalker::SVGRootInlineBoxPaintWalker):
3727 (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback):
3728 (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback):
3729 (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupFillCallback):
3730 (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupStrokeCallback):
3731 (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
3732 (WebCore::SVGRootInlineBox::paint):
3733 (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
3734 (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
3735 (WebCore::svgTextRunForInlineTextBox):
3736 (WebCore::cummulatedWidthOrHeightOfTextChunk):
3737 (WebCore::applyTextAnchorToTextChunk):
3738 (WebCore::SVGRootInlineBox::buildLayoutInformation):
3739 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
3740 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
3741 (WebCore::SVGRootInlineBox::buildTextChunks):
3742 * rendering/bidi.cpp:
3743 (WebCore::RenderBlock::constructLine):
3744 (WebCore::RenderBlock::computeVerticalPositionsForLine):
3745 (WebCore::RenderBlock::layoutInlineChildren):
3746 (WebCore::RenderBlock::checkLinesForTextOverflow):
3747 * svg/SVGTextContentElement.cpp:
3748 (WebCore::cumulativeCharacterRangeLength):
3749 (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
3750 (WebCore::findInlineTextBoxInTextChunks):
3752 2009-02-10 Simon Fraser <simon.fraser@apple.com>
3754 Reviewed by Dave Hyatt
3756 Clean up "fallbackAnimating" logic in AnimationBase. This flag indicates
3757 that animation of an accelerated property must run in software for some reason.
3759 Also remove use of private headers in GraphicsLayerCA related to a case
3760 where we may have to fall back on software animation of transform.
3762 * page/animation/AnimationBase.cpp:
3763 (WebCore::AnimationBase::blendProperties):
3764 * page/animation/AnimationBase.h:
3765 * page/animation/ImplicitAnimation.cpp:
3766 (WebCore::ImplicitAnimation::animate):
3767 * page/animation/KeyframeAnimation.cpp:
3768 (WebCore::KeyframeAnimation::animate):
3769 * platform/graphics/mac/GraphicsLayerCA.h:
3770 * platform/graphics/mac/GraphicsLayerCA.mm:
3771 (WebCore::getValueFunctionNameForTransformOperation):
3772 (WebCore::caValueFunctionSupported):
3773 (WebCore::GraphicsLayerCA::setBackgroundColor):
3774 (WebCore::GraphicsLayerCA::setOpacity):
3775 (WebCore::GraphicsLayerCA::animateTransform):
3776 (WebCore::GraphicsLayerCA::animateFloat):
3777 (WebCore::GraphicsLayerCA::setBasicAnimation):
3778 (WebCore::GraphicsLayerCA::setKeyframeAnimation):
3780 2009-02-10 Simon Fraser <simon.fraser@apple.com>
3782 Reviewed by Dave Hyatt
3784 Move enclosingCompositingLayer() from RenderObject to RenderLayer, since it
3785 relates to the RenderLayer z-order/overflow structure, rather than the render tree
3786 parent chain. Add a convenience method, ancestorCompositingLayer(), which finds
3787 the enclosing layer excluding self.
3789 Fix enclosingCompositingLayer() to correctly look at stacking context and overflow
3792 Check for documentBeingDestroyed() in a few places to avoid work on document
3795 * rendering/RenderLayer.cpp:
3796 (WebCore::RenderLayer::enclosingCompositingLayer):
3797 (WebCore::RenderLayer::setParent):
3798 (WebCore::RenderLayer::dirtyZOrderLists):
3799 (WebCore::RenderLayer::dirtyOverflowList):
3800 * rendering/RenderLayer.h:
3801 (WebCore::RenderLayer::ancestorCompositingLayer):
3802 * rendering/RenderLayerBacking.cpp:
3803 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
3804 * rendering/RenderLayerCompositor.cpp:
3805 (WebCore::RenderLayerCompositor::updateLayerCompositingState):
3806 (WebCore::RenderLayerCompositor::calculateCompositedBounds):
3807 (WebCore::RenderLayerCompositor::layerWillBeRemoved):
3808 (WebCore::RenderLayerCompositor::clippedByAncestor):
3809 * rendering/RenderLayerCompositor.h:
3810 * rendering/RenderObject.cpp:
3811 (WebCore::RenderObject::containerForRepaint):
3812 * rendering/RenderObject.h:
3814 2009-02-10 David Hyatt <hyatt@apple.com>
3816 Rename xPos() and yPos() on RenderLayer to x() and y() to match RenderBox. Rename setPos to setLocation.
3818 Reviewed by Simon Fraser
3820 * dom/MouseRelatedEvent.cpp:
3821 (WebCore::MouseRelatedEvent::receivedTarget):
3822 * rendering/RenderLayer.cpp:
3823 (WebCore::RenderLayer::updateLayerPosition):
3824 (WebCore::RenderLayer::convertToLayerCoords):
3825 * rendering/RenderLayer.h:
3826 (WebCore::RenderLayer::x):
3827 (WebCore::RenderLayer::y):
3828 (WebCore::RenderLayer::setLocation):
3829 * rendering/RenderTreeAsText.cpp:
3831 (WebCore::externalRepresentation):
3833 2009-02-10 Darin Fisher <darin@chromium.org>
3835 Reviewed by Eric Seidel.
3837 https://bugs.webkit.org/show_bug.cgi?id=23879
3838 Add missing PLATFORM(SKIA) changes to TransformationMatrix.h
3840 * platform/graphics/transforms/TransformationMatrix.h:
3842 2009-02-10 Sam Weinig <sam@webkit.org>
3844 Reviewed by David Hyatt.
3846 Fix for https://bugs.webkit.org/show_bug.cgi?id=15897
3847 Please implement getBoundingClientRect and getClientRects
3848 <rdar://problem/6139669>
3850 Cursory implementation of Element.getBoundingClientRect and
3851 Element.getClientRects. Adds necessary infrastructure classes
3852 ClientRect and ClientRectList.
3854 Tests: fast/dom/getBoundingClientRect.html
3855 fast/dom/getClientRects.html
3857 * DerivedSources.make:
3860 * WebCore.vcproj/WebCore.vcproj:
3861 * WebCore.xcodeproj/project.pbxproj:
3862 * WebCoreSources.bkl:
3863 * dom/ClientRect.cpp: Added.
3864 (WebCore::ClientRect::ClientRect):
3865 * dom/ClientRect.h: Added.
3866 (WebCore::ClientRect::create):
3867 (WebCore::ClientRect::top):
3868 (WebCore::ClientRect::right):
3869 (WebCore::ClientRect::bottom):
3870 (WebCore::ClientRect::left):
3871 (WebCore::ClientRect::width):
3872 (WebCore::ClientRect::height):
3873 * dom/ClientRect.idl: Added.
3874 * dom/ClientRectList.cpp: Added.
3875 (WebCore::ClientRectList::ClientRectList):
3876 (WebCore::ClientRectList::~ClientRectList):
3877 (WebCore::ClientRectList::length):
3878 (WebCore::ClientRectList::item):
3879 * dom/ClientRectList.h: Added.
3880 (WebCore::ClientRectList::create):
3881 * dom/ClientRectList.idl: Added.
3883 (WebCore::Element::getClientRects):
3884 (WebCore::Element::getBoundingClientRect):
3887 * page/DOMWindow.idl:
3888 * rendering/RenderInline.cpp:
3889 (WebCore::RenderInline::absoluteRects):
3890 (WebCore::RenderInline::absoluteQuads):
3892 2009-02-10 David Hyatt <hyatt@apple.com>
3894 Get rid of capsLockStateMayHaveChanged on RenderObject. It is only implemented by one class (text fields),
3895 so devirtualize and just query at the single call site.
3897 Reviewed by Eric Seidel
3899 * page/EventHandler.cpp:
3900 (WebCore::EventHandler::capsLockStateMayHaveChanged):
3901 * rendering/RenderObject.h:
3902 * rendering/RenderTextControlSingleLine.h:
3904 2009-02-10 David Hyatt <hyatt@apple.com>
3906 Shrink the size of all RenderObjects (except for RenderInlines) by 4 bytes. This patch moves the cached vertical position member to RenderInlines,
3907 since they were the only objects being queried across multiple lines.
3909 Reviewed by Sam Weinig
3911 * rendering/InlineFlowBox.cpp:
3912 (WebCore::verticalPositionForBox):
3913 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3914 * rendering/RenderBoxModelObject.cpp:
3915 (WebCore::RenderBoxModelObject::verticalPosition):
3916 * rendering/RenderBoxModelObject.h:
3917 * rendering/RenderInline.cpp:
3918 (WebCore::RenderInline::RenderInline):
3919 (WebCore::RenderInline::verticalPositionFromCache):
3920 * rendering/RenderInline.h:
3921 (WebCore::RenderInline::invalidateVerticalPosition):
3922 * rendering/RenderObject.cpp:
3923 (WebCore::RenderObject::RenderObject):
3924 * rendering/RenderObject.h:
3925 * rendering/RenderText.cpp:
3926 * rendering/RenderText.h:
3927 * rendering/bidi.cpp:
3928 (WebCore::RenderBlock::layoutInlineChildren):
3930 2009-02-10 Dimitri Glazkov <dglazkov@chromium.org>
3932 Reviewed by Mark Rowe.
3934 https://bugs.webkit.org/show_bug.cgi?id=23868
3935 Fix code style issues: removed 80-col wrapping, incorrect include style, if statement body on same line.
3937 * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
3938 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
3940 2009-02-10 Dimitri Glazkov <dglazkov@chromium.org>
3942 Reviewed by Eric Seidel.
3944 https://bugs.webkit.org/show_bug.cgi?id=23868
3945 Add HTMLInputElement and HTMLOptionsCollection V8 custom bindings.
3947 * bindings/v8/custom/V8HTMLInputElementCustom.cpp: Added.
3948 (WebCore::ACCESSOR_GETTER):
3949 (WebCore::ACCESSOR_SETTER):
3950 (WebCore::CALLBACK_FUNC_DECL):
3951 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp: Added.
3952 (WebCore::ACCESSOR_GETTER):
3953 (WebCore::ACCESSOR_SETTER):
3955 2009-02-10 Adam Roben <aroben@apple.com>
3957 Fix Bug 23871: Assertion failure beneath WebCore::openFunc when
3958 running http/tests/security/xss-DENIED-xsl-document-redirect.xml
3960 <https://bugs.webkit.org/show_bug.cgi?id=23871>
3962 Reviewed by Alexey Proskuryakov.
3964 Covered by existing tests.
3966 * dom/XMLTokenizerLibxml2.cpp:
3967 (WebCore::openFunc): Use the two-parameter KURL constructor so that
3968 the string will be parsed. libxml2 gives us a UTF-8-encoded string
3969 that needs to be parsed.
3971 2009-02-10 David Hyatt <hyatt@apple.com>
3973 Shrink the size of all replaced elements (images, form controls, plugins) by 4 bytes by packing the
3974 overflow boolean into the RenderObject base class.
3976 Reviewed by Sam Weinig
3978 * rendering/RenderObject.cpp:
3979 (WebCore::RenderObject::RenderObject):
3980 * rendering/RenderObject.h:
3981 (WebCore::RenderObject::replacedHasOverflow):
3982 (WebCore::RenderObject::setReplacedHasOverflow):
3983 * rendering/RenderReplaced.cpp:
3984 (WebCore::RenderReplaced::RenderReplaced):
3985 (WebCore::RenderReplaced::~RenderReplaced):
3986 (WebCore::RenderReplaced::adjustOverflowForBoxShadow):
3987 (WebCore::RenderReplaced::overflowHeight):
3988 (WebCore::RenderReplaced::overflowWidth):
3989 (WebCore::RenderReplaced::overflowLeft):
3990 (WebCore::RenderReplaced::overflowTop):
3991 (WebCore::RenderReplaced::overflowRect):
3992 * rendering/RenderReplaced.h:
3994 2009-02-10 Eric Carlson <eric.carlson@apple.com>
3996 Reviewed by Simon Fraser.
3998 https://bugs.webkit.org/show_bug.cgi?id=23870
3999 Make it possible for a port to require a user gesture for an <audio> or <video> element
4002 * html/HTMLMediaElement.cpp:
4003 (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_loadRestrictions.
4004 (WebCore::HTMLMediaElement::attributeChanged): Only one attribute can change so put an "else" between tests.
4005 (WebCore::HTMLMediaElement::load): Return INVALID_STATE_ERR if RequireUserGestureLoadRestriction is set
4006 and we are not preocessing a user gesture.
4007 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): Remove unnecessary white space.
4008 (WebCore::HTMLMediaElement::play): Ditto.
4009 (WebCore::HTMLMediaElement::endScrubbing): Remove unnecessary braces added in r40789.
4010 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Cache currentTime() in a local instead of calling it
4012 (WebCore::HTMLMediaElement::processingUserGesture): New.
4013 * html/HTMLMediaElement.h:
4014 (WebCore::HTMLMediaElement::): Define LoadRestrictions, add m_loadRestrictions.
4016 2009-02-10 Holger Hans Peter Freyther <zecke@selfish.org>
4018 Reviewed by Sam Weinig.
4020 Remove the SVG checks from FloatPoint3D as it is used
4021 by TransformationMatrix.
4023 * platform/graphics/FloatPoint3D.cpp:
4024 * platform/graphics/FloatPoint3D.h:
4026 2009-02-10 David Hyatt <hyatt@apple.com>
4028 Remove the m_baseline member variable from all line boxes, since it can easily be computed when needed and did not need to be cached.
4030 Reviewed by Sam Weinig
4032 * rendering/EllipsisBox.cpp:
4033 (WebCore::EllipsisBox::paint):
4034 (WebCore::EllipsisBox::nodeAtPoint):
4035 * rendering/EllipsisBox.h:
4036 (WebCore::EllipsisBox::EllipsisBox):
4037 * rendering/InlineBox.h:
4038 (WebCore::InlineBox::InlineBox):
4039 * rendering/InlineFlowBox.cpp:
4040 (WebCore::InlineFlowBox::verticallyAlignBoxes):
4041 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
4042 (WebCore::InlineFlowBox::placeBoxesVertically):
4043 (WebCore::InlineFlowBox::paintTextDecorations):
4044 * rendering/InlineFlowBox.h:
4045 (WebCore::InlineFlowBox::marginBorderPaddingLeft):
4046 (WebCore::InlineFlowBox::marginBorderPaddingRight):
4047 (WebCore::InlineFlowBox::marginLeft):
4048 (WebCore::InlineFlowBox::marginRight):
4049 (WebCore::InlineFlowBox::borderLeft):
4050 (WebCore::InlineFlowBox::borderRight):
4051 (WebCore::InlineFlowBox::borderTop):
4052 (WebCore::InlineFlowBox::borderBottom):
4053 (WebCore::InlineFlowBox::paddingLeft):
4054 (WebCore::InlineFlowBox::paddingRight):
4055 (WebCore::InlineFlowBox::paddingTop):
4056 (WebCore::InlineFlowBox::paddingBottom):
4057 (WebCore::InlineFlowBox::includeLeftEdge):
4058 (WebCore::InlineFlowBox::includeRightEdge):
4059 (WebCore::InlineFlowBox::baseline):
4060 * rendering/InlineTextBox.cpp:
4061 (WebCore::InlineTextBox::paint):
4062 (WebCore::InlineTextBox::paintDecoration):
4063 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
4064 (WebCore::InlineTextBox::paintCompositionUnderline):
4065 * rendering/RenderBlock.cpp:
4066 (WebCore::RenderBlock::getBaselineOfFirstLineBox):
4067 (WebCore::RenderBlock::getBaselineOfLastLineBox):
4068 * rendering/RenderTableCell.cpp:
4069 (WebCore::RenderTableCell::baselinePosition):
4070 * rendering/RootInlineBox.cpp:
4071 (WebCore::RootInlineBox::placeEllipsis):
4072 * rendering/SVGInlineTextBox.cpp:
4073 (WebCore::SVGInlineTextBox::paintDecoration):
4074 * rendering/SVGRootInlineBox.cpp:
4075 (WebCore::applyTextAnchorToTextChunk):
4076 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
4078 2009-02-10 Alexey Proskuryakov <ap@webkit.org>
4080 Reviewed by Darin Adler.
4082 https://bugs.webkit.org/show_bug.cgi?id=23867
4083 Eliminate obsolete frame->document() checks
4085 * page/FrameView.cpp: (WebCore::FrameView::paintContents): Apparently due to a typo
4086 (document vs. !document), fillWithRed was always set to false, and other branches were
4087 never taken. Removing the check for document restores debug-only red color filling.
4089 * loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): Only call dispatchWindowObjectAvailable()
4090 after a document is created. A client can do anything in its delegate method, so we'd need
4091 to have frame->document() checks otherwise. DumpRenderTree uses this delegate to add its
4092 custom property, and it was crashing due to null document in JSDOMWindowBase::getOwnPropertySlot().
4094 * bindings/js/JSDOMWindowBase.cpp:
4095 (WebCore::JSDOMWindowBase::getOwnPropertySlot):
4096 * bindings/js/JSDOMWindowCustom.cpp:
4097 (WebCore::JSDOMWindow::addEventListener):
4098 (WebCore::JSDOMWindow::removeEventListener):
4099 * bindings/js/JSNavigatorCustom.cpp:
4100 (WebCore::needsYouTubeQuirk):
4101 * bindings/js/ScheduledAction.cpp:
4102 (WebCore::ScheduledAction::execute):
4103 * bindings/js/ScriptControllerMac.mm:
4104 (WebCore::updateRenderingForBindings):
4106 (WebCore::Document::initSecurityContext):
4107 * editing/Editor.cpp:
4108 (WebCore::Editor::deleteWithDirection):
4109 (WebCore::Editor::dispatchCPPEvent):
4110 (WebCore::Editor::applyStyle):
4111 (WebCore::Editor::applyParagraphStyle):
4112 * editing/EditorCommand.cpp:
4113 (WebCore::Editor::Command::execute):
4114 (WebCore::Editor::Command::isEnabled):
4115 (WebCore::Editor::Command::state):
4116 (WebCore::Editor::Command::value):
4117 * editing/SelectionController.cpp:
4118 (WebCore::SelectionController::recomputeCaretRect):
4119 (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
4120 (WebCore::SelectionController::selectAll):
4121 (WebCore::SelectionController::setFocused):
4122 * inspector/InspectorController.cpp:
4123 (WebCore::getResourceDocumentNode):
4124 * inspector/JavaScriptDebugServer.cpp:
4125 (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
4126 * loader/DocumentLoader.cpp:
4127 (WebCore::canonicalizedTitle):
4128 (WebCore::DocumentLoader::stopLoading):
4129 (WebCore::DocumentLoader::isLoadingInAPISense):
4130 (WebCore::DocumentLoader::subresource):
4131 (WebCore::DocumentLoader::getSubresources):
4132 * loader/FrameLoader.cpp:
4133 (WebCore::FrameLoader::urlSelected):
4134 (WebCore::FrameLoader::stop):
4135 (WebCore::FrameLoader::iconURL):
4136 (WebCore::FrameLoader::executeIfJavaScriptURL):
4137 (WebCore::FrameLoader::clear):
4138 (WebCore::FrameLoader::endIfNotLoadingMainResource):
4139 (WebCore::FrameLoader::restoreDocumentState):
4140 (WebCore::FrameLoader::gotoAnchor):
4141 (WebCore::FrameLoader::loadDone):
4142 (WebCore::FrameLoader::checkCompleted):
4143 (WebCore::FrameLoader::checkCallImplicitClose):
4144 (WebCore::FrameLoader::scheduleRefresh):
4145 (WebCore::FrameLoader::outgoingOrigin):
4146 (WebCore::FrameLoader::canCachePageContainingThisFrame):
4147 (WebCore::FrameLoader::logCanCacheFrameDecision):
4148 (WebCore::FrameLoader::updatePolicyBaseURL):
4149 (WebCore::FrameLoader::setPolicyBaseURL):
4150 (WebCore::FrameLoader::frameDetached):
4151 (WebCore::FrameLoader::shouldScrollToAnchor):
4152 (WebCore::FrameLoader::saveDocumentState):
4153 * loader/archive/cf/LegacyWebArchive.cpp:
4154 (WebCore::LegacyWebArchive::create):
4155 * loader/icon/IconFetcher.cpp:
4156 (WebCore::IconFetcher::create):
4157 * loader/icon/IconLoader.cpp:
4158 (WebCore::IconLoader::startLoading):
4159 * page/AccessibilityRenderObject.cpp:
4160 (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
4162 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
4163 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
4164 * page/DOMWindow.cpp:
4165 (WebCore::DOMWindow::sessionStorage):
4166 (WebCore::DOMWindow::alert):
4167 (WebCore::DOMWindow::confirm):
4168 (WebCore::DOMWindow::prompt):
4169 (WebCore::DOMWindow::scrollX):
4170 (WebCore::DOMWindow::scrollY):
4171 (WebCore::DOMWindow::getMatchedCSSRules):
4172 (WebCore::DOMWindow::openDatabase):
4173 (WebCore::DOMWindow::scrollBy):
4174 (WebCore::DOMWindow::scrollTo):
4175 * page/EventHandler.cpp:
4176 (WebCore::EventHandler::allowDHTMLDrag):
4177 (WebCore::EventHandler::scrollOverflow):
4178 (WebCore::EventHandler::handleMousePressEvent):
4179 (WebCore::EventHandler::handleMouseDoubleClickEvent):
4180 (WebCore::EventHandler::handleMouseMoveEvent):
4181 (WebCore::EventHandler::handleMouseReleaseEvent):
4182 (WebCore::EventHandler::updateDragAndDrop):
4183 (WebCore::EventHandler::handleWheelEvent):
4184 (WebCore::EventHandler::sendContextMenuEvent):
4185 (WebCore::EventHandler::capsLockStateMayHaveChanged):
4186 (WebCore::EventHandler::sendResizeEvent):
4187 (WebCore::EventHandler::sendScrollEvent):
4188 * page/FocusController.cpp:
4189 (WebCore::deepFocusableNode):
4190 (WebCore::FocusController::advanceFocus):
4192 (WebCore::Frame::setFocusedNodeIfNeeded):
4193 (WebCore::Frame::shouldApplyTextZoom):
4194 (WebCore::Frame::shouldApplyPageZoom):
4195 (WebCore::Frame::setZoomFactor):
4196 (WebCore::Frame::setPrinting):
4197 (WebCore::Frame::reapplyStyles):
4198 (WebCore::Frame::isContentEditable):
4199 (WebCore::Frame::computeAndSetTypingStyle):
4200 (WebCore::Frame::selectionComputedStyle):
4201 (WebCore::Frame::applyEditingStyleToBodyElement):
4202 (WebCore::Frame::removeEditingStyleFromBodyElement):
4203 (WebCore::Frame::contentRenderer):
4204 (WebCore::Frame::styleForSelectionStart):
4205 (WebCore::Frame::setSelectionFromNone):
4206 (WebCore::Frame::findString):
4207 (WebCore::Frame::markAllMatchesForText):
4208 (WebCore::Frame::setMarkedTextMatchesAreHighlighted):
4209 (WebCore::Frame::documentTypeString):
4210 (WebCore::Frame::shouldClose):
4211 (WebCore::Frame::respondToChangedSelection):
4212 * page/FrameView.cpp:
4213 (WebCore::FrameView::~FrameView):
4214 (WebCore::FrameView::createScrollbar):
4215 (WebCore::FrameView::layout):
4216 (WebCore::FrameView::layoutTimerFired):
4217 (WebCore::FrameView::scheduleRelayout):
4218 (WebCore::FrameView::needsLayout):
4219 (WebCore::FrameView::unscheduleRelayout):
4220 (WebCore::FrameView::windowClipRect):
4221 * page/Geolocation.cpp:
4222 (WebCore::Geolocation::disconnectFrame):
4224 (WebCore::networkStateChanged):
4225 (WebCore::Page::~Page):
4226 (WebCore::Page::unmarkAllTextMatches):
4227 (WebCore::Page::setMediaVolume):
4228 * page/animation/AnimationController.cpp:
4229 (WebCore::AnimationControllerPrivate::updateRenderingDispatcherFired):
4230 * page/mac/EventHandlerMac.mm:
4231 (WebCore::EventHandler::currentKeyboardEvent):
4232 (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
4233 * page/mac/FrameMac.mm:
4234 (WebCore::Frame::dashboardRegionsDictionary):