1 2009-02-23 David Levin <levin@chromium.org>
3 Reviewed by Alexey Proskuryakov.
5 Bug 24088: ThreadableLoaderClient::didFailWillSendRequestCheck isn't wired up completely for workers and could use a better name.
6 <https://bugs.webkit.org/show_bug.cgi?id=24088>
8 No observable change in behavior, so no test.
10 * loader/DocumentThreadableLoader.cpp:
11 (WebCore::DocumentThreadableLoader::create):
12 * loader/ThreadableLoaderClient.h:
13 (WebCore::ThreadableLoaderClient::didFailRedirectCheck):
14 * loader/ThreadableLoaderClientWrapper.h:
15 (WebCore::ThreadableLoaderClientWrapper::didFailRedirectCheck):
16 * loader/WorkerThreadableLoader.cpp:
17 (WebCore::workerContextDidFailRedirectCheck):
18 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
19 * loader/WorkerThreadableLoader.h:
20 * xml/XMLHttpRequest.cpp:
21 (WebCore::XMLHttpRequest::didFinishLoading):
22 * xml/XMLHttpRequest.h:
24 2009-02-23 David Levin <levin@chromium.org>
26 Reviewed by Alexey Proskuryakov.
28 Bug 24047: Need to simplify nested if's in WorkerRunLoop::runInMode
29 <https://bugs.webkit.org/show_bug.cgi?id=24047>
31 Made a nested if inside of WorkerRunLoop::runInMode a lot simpler by
32 using only MessageQueue::waitForMessageFilteredWithTimeout instead
33 of three different MessageQueue methods.
35 No observable change in behavior, so no test.
37 * dom/WorkerRunLoop.cpp:
38 (WebCore::ModePredicate::operator()):
39 Minor clean-up to able to pass a const ref point for ModePredicate into runInMode.
40 (WebCore::WorkerRunLoop::runInMode):
41 * dom/WorkerRunLoop.h:
43 2009-02-23 David Hyatt <hyatt@apple.com>
45 In preparation for making layers for multicol objects (so that they can properly split child layers
46 into multiple columns), rename all of the "overflowOnly" and "overflowList" members and functions
47 of RenderLayer to use the term "normal flow" instead.
49 Reviewed by Cameron Zwarich
51 * rendering/RenderLayer.cpp:
52 (WebCore::RenderLayer::RenderLayer):
53 (WebCore::RenderLayer::~RenderLayer):
54 (WebCore::RenderLayer::setHasVisibleContent):
55 (WebCore::RenderLayer::enclosingCompositingLayer):
56 (WebCore::RenderLayer::addChild):
57 (WebCore::RenderLayer::removeChild):
58 (WebCore::RenderLayer::paintLayer):
59 (WebCore::RenderLayer::hitTestLayer):
60 (WebCore::RenderLayer::dirtyNormalFlowList):
61 (WebCore::RenderLayer::updateNormalFlowList):
62 (WebCore::RenderLayer::collectLayers):
63 (WebCore::RenderLayer::updateLayerListsIfNeeded):
64 (WebCore::RenderLayer::shouldBeNormalFlowOnly):
65 (WebCore::RenderLayer::styleChanged):
66 * rendering/RenderLayer.h:
67 (WebCore::RenderLayer::isNormalFlowOnly):
68 (WebCore::RenderLayer::normalFlowList):
69 * rendering/RenderTreeAsText.cpp:
70 (WebCore::writeLayers):
72 2009-02-23 David Hyatt <hyatt@apple.com>
74 Fix the stacking order for column rules in multi-column layout. Column rules should paint as part of the background of an element, just
75 after all other components of the background have been painted. This allows negative z-index children to still paint on top of the
76 column rules (rather than ending up above the background of the box but behind the column rules).
78 Reviewed by Eric Seidel
80 Added fast/multicol/column-rules-stacking.html
82 * rendering/RenderBlock.cpp:
83 (WebCore::RenderBlock::paintColumnRules):
84 (WebCore::RenderBlock::paintColumnContents):
85 (WebCore::RenderBlock::paintObject):
86 * rendering/RenderBlock.h:
88 2009-02-23 Adam Treat <adam.treat@torchmobile.com>
90 Reviewed by David Hyatt.
92 No testcases have been added or modified since this patch should not result in
93 a behavior change for ports that have layout tests enabled.
95 Currently, the implementation of GraphicsContext::drawLineForText amongst
96 the various ports differ in that some of them are honoring the context's
97 strokeStyle when drawing a text-decoration and some of them are not.
98 For instance, Apple's Mac port *does not* honor the context's strokeStyle(),
99 but the Cairo implementation does and has an explicit workaround that
100 sets the strokeStyle() temporarily.
102 This patch fixes so that all ports are consistent by explicitly making sure
103 to set the GraphicsContext strokeStyle to SolidStroke whenever
104 painting the text-decoration of an InlineFlowBox or InlineTextBox as these
105 should always use a solid stroke.
107 This patch addresses these bugs:
108 https://bugs.webkit.org/show_bug.cgi?id=19364
109 https://bugs.webkit.org/show_bug.cgi?id=15659
111 * rendering/InlineFlowBox.cpp:
112 (WebCore::InlineFlowBox::paintTextDecorations):
113 * rendering/InlineTextBox.cpp:
114 (WebCore::InlineTextBox::paintDecoration):
116 2009-02-23 Scott Violet <sky@google.com>
118 Reviewed by Eric Seidel.
120 https://bugs.webkit.org/show_bug.cgi?id=24098
121 Bugs in ClipboardChromium
123 Fixes the following bugs in ClipboardChromium:
124 * It's possible for the extension to be empty, resulting in a bad file
125 name, for example, 'foo.' or just '.'.
126 * We weren't restricting the size of the file to MAX_PATH.
127 * We weren't removing characters that are invalid for file system names.
129 * platform/chromium/ClipboardChromium.cpp:
130 (WebCore::writeImageToDataObject):
131 * platform/chromium/ClipboardChromium.h:
132 * platform/chromium/ClipboardChromiumLinux.cpp: Added.
133 (WebCore::ClipboardChromium::validateFileName):
134 * platform/chromium/ClipboardChromiumMac.cpp: Added.
135 (WebCore::ClipboardChromium::validateFileName):
136 * platform/chromium/ClipboardChromiumWin.cpp: Added.
137 (WebCore::isInvalidFileCharacter):
138 (WebCore::ClipboardChromium::validateFileName):
140 2009-02-23 Thiago Macieira <thiago.macieira@nokia.com>
142 Reviewed by Simon Hausmann.
144 Fix the Copyright notices in a few files
146 * platform/qt/RenderThemeQt.h:
148 2009-02-23 Xan Lopez <xan@gnome.org>
150 Reviewed by Alexey Proskuryakov.
152 https://bugs.webkit.org/show_bug.cgi?id=22624
153 [SOUP][GTK] Need API to get SoupSession from WebKit.
155 Allow to retrieve the Soup session and modify the code to take
156 into account users changing features on it.
158 * platform/network/ResourceHandle.h:
159 * platform/network/soup/CookieJarSoup.cpp:
160 (WebCore::defaultCookieJar):
161 (WebCore::setDefaultCookieJar):
162 * platform/network/soup/CookieJarSoup.h:
163 * platform/network/soup/ResourceHandleSoup.cpp:
164 (WebCore::createSoupSession):
165 (WebCore::ensureSessionIsInitialized):
166 (WebCore::ResourceHandle::startHttp):
167 (WebCore::ResourceHandle::cancel):
168 (WebCore::ResourceHandle::defaultSession):
170 2009-02-23 Xan Lopez <xan@gnome.org>
172 Reviewed by Alexey Proskuryakov.
174 https://bugs.webkit.org/show_bug.cgi?id=22624
175 [SOUP][GTK] Need API to get SoupSession from WebKit.
181 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
183 Reviewed by Mark Rowe.
185 Test: fast/dom/empty-hash-and-search.html
187 https://bugs.webkit.org/show_bug.cgi?id=21147
188 hash property returns incorrect value for links w/o hash
190 Make hash() and search() behavior for empty and missing parts match IE and Firefox.
193 (WebCore::KURL::query): Changed to return query without '?', as it is already done for ref().
194 (WebCore::KURL::prettyURL): Append the query with the question mark.
197 (WebCore::Location::search): Return an empty string if query is empty or missing.
198 (WebCore::Location::hash): Return an empty string for empty hashes, not only missing ones.
200 * dom/WorkerLocation.cpp:
201 (WebCore::WorkerLocation::search):
202 (WebCore::WorkerLocation::hash):
203 Match document.location fixes above.
205 * html/HTMLAnchorElement.cpp:
206 (WebCore::HTMLAnchorElement::hash):
207 (WebCore::HTMLAnchorElement::search):
208 Return an empty string for empty and missing parts.
210 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
212 Reviewed by Darin Adler.
214 https://bugs.webkit.org/show_bug.cgi?id=20184
215 SELECT with no name generates invalid query string
217 Test: fast/forms/select-no-name.html
219 * html/HTMLSelectElement.cpp:
220 (WebCore::HTMLSelectElement::appendFormData): Added a check for empty name.
222 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
224 Apply review comments for the previous check-in (forgot to save the file, oops).
226 * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren):
228 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
230 Reviewed by Darin Adler.
232 https://bugs.webkit.org/show_bug.cgi?id=15707
233 Crash when manipulating document from within an iframe onload function
235 Test: fast/dom/onload-open.html
237 * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren): Protect the container and
238 the current node, because anything can happen when dispatching events.
240 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
242 Reviewed by Darin Adler.
244 https://bugs.webkit.org/show_bug.cgi?id=18970
245 Numerically named input fields cause document.forms loop problems
247 Test: fast/forms/numeric-input-name.html
249 * bindings/scripts/CodeGeneratorJS.pm: Try index getter before name getter, even if the
250 latter overrides properties.
252 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
254 Reviewed by Sam Weinig.
256 https://bugs.webkit.org/show_bug.cgi?id=24059
257 Tokenizer::write() return value is never used
260 * dom/XMLTokenizer.cpp:
261 (WebCore::XMLTokenizer::write):
262 * dom/XMLTokenizer.h:
263 * html/HTMLTokenizer.cpp:
264 (WebCore::HTMLTokenizer::write):
265 * html/HTMLTokenizer.h:
266 * loader/FTPDirectoryDocument.cpp:
267 (WebCore::FTPDirectoryTokenizer::write):
268 * loader/ImageDocument.cpp:
269 (WebCore::ImageTokenizer::write):
270 * loader/MediaDocument.cpp:
271 (WebCore::MediaTokenizer::write):
272 * loader/PluginDocument.cpp:
273 (WebCore::PluginTokenizer::write):
274 * loader/TextDocument.cpp:
275 (WebCore::TextTokenizer::write):
276 Made write() return void, not bool.
278 2009-02-20 Geoffrey Garen <ggaren@apple.com>
280 Reviewed by Sam Weinig.
282 Updated for JavaScriptCore changes to timeout checking.
284 * bindings/js/JSCustomPositionCallback.cpp:
285 (WebCore::JSCustomPositionCallback::handleEvent):
286 * bindings/js/JSCustomPositionErrorCallback.cpp:
287 (WebCore::JSCustomPositionErrorCallback::handleEvent):
288 * bindings/js/JSCustomSQLStatementCallback.cpp:
289 (WebCore::JSCustomSQLStatementCallback::handleEvent):
290 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
291 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
292 * bindings/js/JSCustomSQLTransactionCallback.cpp:
293 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
294 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
295 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
296 * bindings/js/JSCustomVoidCallback.cpp:
297 (WebCore::JSCustomVoidCallback::handleEvent):
298 * bindings/js/JSCustomXPathNSResolver.cpp:
299 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
300 * bindings/js/JSDOMWindowBase.cpp:
301 (WebCore::JSDOMWindowBase::JSDOMWindowBase):
302 (WebCore::JSDOMWindowBase::commonJSGlobalData):
303 * bindings/js/JSEventListener.cpp:
304 (WebCore::JSAbstractEventListener::handleEvent):
305 * bindings/js/ScheduledAction.cpp:
306 (WebCore::ScheduledAction::executeFunctionInContext):
307 * bindings/js/ScriptController.cpp:
308 (WebCore::ScriptController::evaluate):
309 * bindings/js/WorkerScriptController.cpp:
310 (WebCore::WorkerScriptController::evaluate):
311 (WebCore::WorkerScriptController::forbidExecution):
312 * bindings/objc/WebScriptObject.mm:
313 (-[WebScriptObject callWebScriptMethod:withArguments:]):
314 (-[WebScriptObject evaluateWebScript:]):
315 * bridge/NP_jsobject.cpp:
316 (_NPN_InvokeDefault):
320 * bridge/jni/jni_jsobject.mm:
321 (JavaJSObject::call):
322 (JavaJSObject::eval):
324 2009-02-21 Hironori Bono <hbono@chromium.org>
326 Reviewed by Alexey Proskuryakov.
328 https://bugs.webkit.org/show_bug.cgi?id=23786
329 [Chromium] line-break characters in a complex text are treated as zero-width spaces
331 This change prevents the UniscribeHelper class from treating the line-break characters
334 Tests: fast/text/international/bidi-linebreak-001.html
335 fast/text/international/bidi-linebreak-002.html
336 fast/text/international/bidi-linebreak-003.html
338 * platform/graphics/chromium/UniscribeHelper.cpp:
339 (WebCore::UniscribeHelper::adjustSpaceAdvances):
340 Make the UniscribeHelper::adjustSpaceAdvances() function treat all characters in
341 the treatAsSpace() function (e.g. U+0020, U+000A, U+000D, U+00A0) as whitespaces,
342 so does when Chromium renders a simple text.
344 2009-02-20 Julien Chaffraix <jchaffraix@webkit.org>
346 Reviewed by Alexey Proskuryakov.
348 Bug 23940: Use Document::createElement(const QualifiedName&, bool) when creating a known element inside WebCore
350 Document::createElement(const QualifiedName&, bool) does not check for the prefix as opposed the the one taking an AtomicString
351 or Document::createElementNS. This is perfectly fine internally because we know the type of element created and the check is
354 It also removes the use of an ExceptionCode argument which was here only to check that the prefix check was fine. Finally it
355 enables us to use some generated QualifiedName.
357 * bindings/js/JSOptionConstructor.cpp:
358 (WebCore::constructHTMLOptionElement):
360 (WebCore::Document::setTitle):
361 * dom/XMLTokenizer.cpp:
362 (WebCore::createXHTMLParserErrorHeader):
363 (WebCore::XMLTokenizer::insertErrorMessageBlock):
364 * editing/CompositeEditCommand.cpp:
365 (WebCore::createBlockPlaceholderElement):
366 * editing/htmlediting.cpp:
367 (WebCore::createTabSpanElement):
368 * html/HTMLSelectElement.cpp:
369 (WebCore::HTMLSelectElement::setLength):
370 * loader/FTPDirectoryDocument.cpp:
371 (WebCore::FTPDirectoryTokenizer::appendEntry):
372 (WebCore::FTPDirectoryTokenizer::createTDForFilename):
373 (WebCore::FTPDirectoryTokenizer::loadDocumentTemplate):
374 (WebCore::FTPDirectoryTokenizer::createBasicDocument):
375 * loader/ImageDocument.cpp:
376 (WebCore::ImageDocument::createDocumentStructure):
377 * loader/MediaDocument.cpp:
378 (WebCore::MediaTokenizer::createDocumentStructure):
379 * loader/PluginDocument.cpp:
380 (WebCore::PluginTokenizer::createDocumentStructure):
381 * loader/TextDocument.cpp:
382 (WebCore::TextTokenizer::write):
384 (WebCore::Frame::selectionComputedStyle):
385 (WebCore::Frame::styleForSelectionStart):
386 Document::createElement(const AtomicString&, ...) to Document::createElement(const QualifiedName&, ...) switch.
388 * xml/XPathFunctions.cpp:
389 (WebCore::XPath::FunLang::evaluate): Re-use langAttr instead of creating a new attribute.
390 * page/DragController.cpp:
391 (WebCore::documentFragmentFromDragData): Use the HTMLAnchorElement directly to get rid of the static cast.
393 2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
395 Reviewed by Eric Seidel.
397 https://bugs.webkit.org/show_bug.cgi?id=24060
398 Fix up to accommodate for CanvasPixelArray return.
400 * platform/graphics/skia/ImageBufferSkia.cpp:
401 (WebCore::ImageBuffer::getImageData): Added an extra data() to call.
402 (WebCore::ImageBuffer::putImageData): Ditto.
404 2009-02-20 Eric Carlson <eric.carlson@apple.com>
408 https://bugs.webkit.org/show_bug.cgi?id=24042
409 Bug 24042: MediaPlayer should cache plug-in proxy
411 The changes in https://bugs.webkit.org/show_bug.cgi?id=23917 assume that
412 MediaPlayer will always have created the private media player object before
413 the plug-in is instantiated and calls back with the proxy object. This is not
414 true on all platforms because of threading latency, so MediaPlayer should
415 cache the plug-in proxy so it can pass it to the media engine at a later time.
417 * platform/graphics/MediaPlayer.cpp:
418 (WebCore::NullMediaPlayerPrivate::setPoster): Null media engine implementation of proxy methods.
419 (WebCore::NullMediaPlayerPrivate::deliverNotification): Ditto.
420 (WebCore::NullMediaPlayerPrivate::setMediaPlayerProxy): Ditto.
421 (WebCore::MediaPlayer::MediaPlayer): Initialize m_playerProxy.
422 (WebCore::MediaPlayer::load): Pass m_playerProxy to newly created engine.
423 (WebCore::MediaPlayer::setMediaPlayerProxy): Cache m_playerProxy.
424 * platform/graphics/MediaPlayer.h: Declare m_playerProxy.
426 2009-02-20 Eric Carlson <eric.carlson@apple.com>
430 https://bugs.webkit.org/show_bug.cgi?id=24063
431 Make it possible for a port to require a user gesture to play/pause an <audio> or <video> element
433 * html/HTMLMediaElement.cpp:
434 (WebCore::HTMLMediaElement::HTMLMediaElement): Rename m_loadRestrictions to m_Restrictions.
435 Initialize m_internalCall.
436 (WebCore::HTMLMediaElement::loadTimerFired): Increment m_internalCall around call to load().
437 (WebCore::HTMLMediaElement::load): Call loadInternal if restrictions check out.
438 (WebCore::HTMLMediaElement::loadInternal): New, guts of old load()
439 (WebCore::HTMLMediaElement::setNetworkState): Fix bug introduced in r40943
440 (WebCore::HTMLMediaElement::play): Call playInternal if restrictions check out.
441 (WebCore::HTMLMediaElement::playInternal): New, guts of old play()
442 (WebCore::HTMLMediaElement::pause): Call pauseInternal if restrictions check out.
443 (WebCore::HTMLMediaElement::pauseInternal): New, guts of old pause()
444 (WebCore::HTMLMediaElement::togglePlayState): Call playInternal/pauseInternal
445 (WebCore::HTMLMediaElement::deliverNotification): Remove unnecessary white space.
446 * html/HTMLMediaElement.h: Rename m_loadRestrictions to m_Restrictions, add m_internalCall,
447 add RequireUserGestureRateChangeRestriction.
449 2009-02-20 Darin Fisher <darin@chromium.org>
451 Fix build bustage in FileSystemWin.cpp.
453 Need to return CString() instead of 0 since there are now two CString
454 constructors that take a pointer type.
456 * platform/win/FileSystemWin.cpp:
457 (WebCore::openTemporaryFile):
459 2009-02-20 Dimitri Glazkov <dglazkov@chromium.org>
461 Reviewed by Sam Weinig.
463 https://bugs.webkit.org/show_bug.cgi?id=23999
464 Change license headers to accurately reflect code history.
466 * platform/ContentType.cpp:
467 * platform/ContentType.h:
469 2009-02-18 Dimitri Glazkov <dglazkov@chromium.org>
471 Reviewed by Antti Koivisto.
473 https://bugs.webkit.org/show_bug.cgi?id=23999
474 Split off MIME type parsing into its own class.
476 * GNUmakefile.am: Added ContentType sources.
477 * WebCore.pro: Ditto.
478 * WebCore.scons: Ditto.
479 * WebCore.vcproj/WebCore.vcproj: Ditto.
480 * WebCore.xcodeproj/project.pbxproj: Ditto.
481 * WebCoreSources.bkl: Ditto.
482 * html/HTMLMediaElement.cpp: Changed to use ContentType.
483 (WebCore::HTMLMediaElement::selectMediaURL):
484 * platform/ContentType.cpp: Added.
485 (WebCore::ContentType::ContentType):
486 (WebCore::ContentType::parameter):
487 (WebCore::ContentType::type):
488 * platform/ContentType.h: Added.
489 (WebCore::ContentType::raw):
490 * platform/MIMETypeRegistry.cpp:
491 * platform/MIMETypeRegistry.h:
492 * platform/graphics/MediaPlayer.cpp:
493 (WebCore::MediaPlayer::load):
494 * rendering/style/ContentData.h: Renamed ContentType to StyleContentType.
495 * rendering/style/RenderStyleConstants.h: Ditto.
498 2009-02-20 Holger Hans Peter Freyther <zecke@selfish.org>
500 Unreviewed build fix.
502 Use CString() instead of 0.
504 * platform/gtk/FileSystemGtk.cpp:
505 (WebCore::openTemporaryFile):
506 * platform/qt/FileSystemQt.cpp:
507 (WebCore::openTemporaryFile):
509 2009-02-20 Gustavo Noronha Silva <gns@gnome.org>
511 Reviewed by Holger Freyther.
513 When dealing with local files, use a path instead of an URI. GFile
514 has problems decoding URIs with percent signs on them.
516 * platform/network/soup/ResourceHandleSoup.cpp:
517 (WebCore::ResourceHandle::startGio):
519 2009-02-20 Gustavo Noronha Silva <gns@gnome.org>
521 Reviewed by Holger Freyther.
523 Protect the ResourceHandle instance from being destroyed by
524 didReceiveData inside the GIO readCallback call, so that
525 cancelling caused by scripts is handled correctly.
527 * platform/network/soup/ResourceHandleSoup.cpp:
528 (WebCore::readCallback):
530 2009-02-20 David Kilzer <ddkilzer@apple.com>
532 Make IconDatabaseNone.cpp compile with -Wunused and pass check-for-exit-time-destructors
534 Reviewed by Sam Weinig.
536 * loader/icon/IconDatabaseNone.cpp:
537 (WebCore::IconDatabase::defaultDatabaseFilename): Use DEFINE_STATIC_LOCAL().
538 (WebCore::IconDatabase::open): Commented out unused parameter.
539 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ditto.
540 (WebCore::IconDatabase::iconForPageURL): Ditto.
541 (WebCore::IconDatabase::iconURLForPageURL): Ditto.
542 (WebCore::IconDatabase::defaultIcon): Ditto.
543 (WebCore::IconDatabase::retainIconForPageURL): Ditto.
544 (WebCore::IconDatabase::releaseIconForPageURL): Ditto.
545 (WebCore::IconDatabase::setIconDataForIconURL): Ditto.
546 (WebCore::IconDatabase::setIconURLForPageURL): Ditto.
547 (WebCore::IconDatabase::setEnabled): Ditto.
548 (WebCore::IconDatabase::pageURLMappingCount): Added stub.
549 (WebCore::IconDatabase::retainedPageURLCount): Ditto.
550 (WebCore::IconDatabase::iconRecordCount): Ditto.
551 (WebCore::IconDatabase::iconRecordCountWithData): Ditto.
553 2009-02-20 David Kilzer <ddkilzer@apple.com>
555 Add comment to generated code when shadowing a built-in object
557 Reviewed by Sam Weinig.
559 * bindings/scripts/CodeGeneratorJS.pm: Added comment to
560 generated code output.
562 2009-02-20 Avi Drissman <avi@chromium.org>
564 Reviewed by Eric Seidel.
566 https://bugs.webkit.org/show_bug.cgi?id=24036
567 Keyboard events need disambiguation on the Linux platform too.
569 * platform/chromium/PlatformKeyboardEventChromium.cpp:
570 (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
572 2009-02-19 Darin Fisher <darin@chromium.org>
574 Reviewed by Eric Seidel.
576 https://bugs.webkit.org/show_bug.cgi?id=24046
578 Several improvements to CString:
579 1- Make it possible to initialize a CString from a CStringBuffer
580 2- Make it possible to get a CStringBuffer from a CString
581 3- Change CStringBuffer::data() to return a const pointer to ward off mutation
582 4- Remove unused releaseBuffer() methods.
583 5- Make CStringBuffer::create() private to force consumers to get a CStringBuffer from a CString.
585 * platform/text/CString.cpp:
586 (WebCore::CString::init):
587 (WebCore::CString::mutableData):
588 (WebCore::CString::newUninitialized):
589 (WebCore::CString::copyBufferIfNeeded):
590 * platform/text/CString.h:
591 (WebCore::CStringBuffer::data):
592 (WebCore::CStringBuffer::length):
593 (WebCore::CStringBuffer::create):
594 (WebCore::CStringBuffer::mutableData):
595 (WebCore::CString::CString):
596 (WebCore::CString::buffer):
598 2009-02-19 Dmitry Titov <dimich@chromium.org>
600 Reviewed by Alexey Proskuryakov.
602 https://bugs.webkit.org/show_bug.cgi?id=24017
603 Remove some usage of Document in Worker.
605 * dom/WorkerContext.h:
606 (WebCore::WorkerContext::userAgent):
608 (WebCore::Document::userAgent):
610 * dom/ScriptExecutionContext.h:
611 Added virtual ScriptExecutionContext::userAgent(const KURL&).
612 Document implementation uses FrameLoader::userAgent and
613 WorkerContext receives the string on creation and stores it in a member.
616 (WebCore::Worker::Worker):
617 (WebCore::Worker::notifyFinished):
619 (WebCore::Worker::create):
620 Instead of Document the Worker constructor now gets a ScriptExecutionContext.
621 Start using some methods on SEC (like completeURL() and userAgent()).
622 For others, explicitly case to Document and add a FIXME.
623 Remove Worker::document() too.
625 2009-02-20 Gustavo Noronha Silva <gns@gnome.org>
627 Rubber-stamped by Holger Freyther.
629 Do not set httpStatus to SOUP_STATUS_OK when serving local files
630 to match other ports' behavior, fixing xmlhttprequest test
633 * platform/network/soup/ResourceHandleSoup.cpp:
634 (WebCore::queryInfoCallback):
636 2009-02-19 Dan Bernstein <mitz@apple.com>
638 Reviewed by Sam Weinig.
640 - WebCore part of fixing https://bugs.webkit.org/show_bug.cgi?id=24027
641 Do not send loader callbacks during CSS styling
643 Undo the iChat-specific quirk added in
644 <http://trac.webkit.org/changeset/41071>. Instead, always suspend memory
645 cache client callbacks during attach() and recalcStyle().
647 * WebCore.base.exp: Removed
648 Settings::setNeedsIChatMemoryCacheCallsQuirk().
649 * dom/ContainerNode.cpp:
650 (WebCore::ContainerNode::suspendPostAttachCallbacks): Disable memory
651 cache client callbacks and remember to enable them afterwards if needed.
652 (WebCore::ContainerNode::resumePostAttachCallbacks): Re-enable memory
653 cache client callbacks if they were disabled in
654 suspendPostAttachCallbacks().
655 (WebCore::ContainerNode::attach): Use suspendPostAttachCallbacks() and
656 resumePostAttachCallbacks().
657 * dom/ContainerNode.h: Made suspendPostAttachCallbacks()
658 and resumePostAttachCallbacks() non-static.
660 (WebCore::Document::dispatchImageLoadEventsNow): Reverted iChat-specific
662 * page/Settings.cpp: Removed m_needsIChatMemoryCacheCallsQuirk and
664 (WebCore::Settings::Settings):
667 2009-02-19 Holger Hans Peter Freyther <zecke@selfish.org>
669 Unreviewed build fix.
671 Build fix after r41092. Make the memoryUsage method
672 public. It will be shadowed by cf/mac and for curl/soup/qt
673 the implementation from ResourceResponseBase will be used.
675 * platform/network/ResourceResponseBase.h:
676 (WebCore::ResourceResponseBase::memoryUsage):
678 2009-02-19 Beth Dakin <bdakin@apple.com>
680 Reviewed by Dave Hyatt.
682 Fix for <rdar://problem/6077775> Should be able to specify
683 inactive ::selection color
685 This patch makes the ::selction pseudo-element work with
686 the :window-inactive pseudo type. This was, a user can specify a
687 different ::selection style when a window is inactive.
689 * css/CSSStyleSelector.cpp:
690 (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
691 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
692 * rendering/RenderObject.cpp:
693 (WebCore::RenderObject::selectionBackgroundColor):
694 (WebCore::RenderObject::selectionForegroundColor):
696 2009-02-19 Sam Weinig <sam@webkit.org>
698 Reviewed by Beth Dakin.
700 Patch for https://bugs.webkit.org/show_bug.cgi?id=24044
701 Update querySelector/querySelectorAll to match the latest spec
703 Update querySelector and querySelectorAll to match the latest version
704 of the Selectors API spec. We now stringify null and undefined to "null"
705 and "undefined" respectively instead of to "".
707 Test: fast/dom/SelectorAPI/undefined-null-stringify.html
710 * dom/DocumentFragment.idl:
713 2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
715 Reviewed by Geoffrey Garen.
717 https://bugs.webkit.org/show_bug.cgi?id=23732
718 Rework CachedResource overhead accounting to allow platforms to diverge
721 * loader/CachedResource.cpp:
722 (WebCore::CachedResource::overheadSize): Changed to ask ResourceResponse
723 for its size and to use actual URL size.
724 * platform/network/ResourceResponseBase.h:
725 (WebCore::ResourceResponseBase::size): Added default size method.
726 * platform/network/cf/ResourceResponse.h:
727 (WebCore::ResourceResponse::size): Added Win/CF size method
728 * platform/network/mac/ResourceResponse.h:
729 (WebCore::ResourceResponse::size): Added Mac size method.
731 2009-02-19 Anders Carlsson <andersca@apple.com>
733 Reviewed by Kevin Decker.
735 - Fix for <rdar://problem/6604968>
737 On Tiger, create an autorelease pool before creating the NSGraphicsContext and drain it immediately
738 after the call to -[NSView displayRectIgnoringOpacity:inContext:].
740 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
741 (WebCore::MediaPlayerPrivate::paint):
743 2009-02-19 David Hyatt <hyatt@apple.com>
745 Fix a bug where reflections didn't work properly if opacity was < 1. Make sure that replaced elements
746 also consider reflections to be part of their visual overflow. This had already been done for blocks
747 and lines, but it wasn't being done yet for replaced elements.
749 Also make sure that when the object being reflected has opacity < 1 that we don't end up popping the outer
750 transparency layer early. Since the reflected object paints twice, we don't want to end the transparency
751 layer it pushed until we're done painting the real object (rather than the reflection).
753 Reviewed by Dan Bernstein
755 Added fast/reflections/reflection-masks-opacity.html
757 * rendering/RenderLayer.cpp:
758 (WebCore::RenderLayer::paintLayer):
759 * rendering/RenderPartObject.cpp:
760 (WebCore::RenderPartObject::layout):
761 * rendering/RenderReplaced.cpp:
762 (WebCore::RenderReplaced::layout):
763 (WebCore::RenderReplaced::adjustOverflowForBoxShadowAndReflect):
764 * rendering/RenderReplaced.h:
766 2009-02-19 David Levin <levin@chromium.org>
768 Reviewed by Alexey Proskuryakov.
770 Bug 23980: WorkerRunLoop needs a way to run in a given mode similar to CFRunLoopInMode.
771 <https://bugs.webkit.org/show_bug.cgi?id=23980>
773 WorkerRunLoop has the ability to run in a mode which filters the tasks to be run.
774 * When WorkerRunLoop::runInMode is called, only task for that mode will run.
775 * When WorkerRunLoop::run is called (or the default mode is used), then all tasks
776 will run regardless of their posted mode.
778 Here's a demonstration of the api:
780 RefPtr<NameResolution> nameResolution = NameResolution::create(workerRunLoop);
782 // Internally nameResolution will do workerRunLoop.postTaskForMode(task, "MyCoolMode")
783 // for any tasks that need to be run during this loop.
784 nameResolution->setTaskMode("MyCoolMode");
786 nameResolution->start();
787 while (!nameResolution->done()) {
788 // Only tasks which are posted for "MyCoolMode" will run.
789 workerRunLoop.runInMode(context, "MyCoolMode");
792 No observable change in behavior, so no test.
794 * dom/WorkerRunLoop.cpp:
795 (WebCore::ModePredicate::ModePredicate):
796 (WebCore::ModePredicate::operator()):
797 (WebCore::WorkerRunLoop::WorkerRunLoop):
798 (WebCore::WorkerRunLoop::~WorkerRunLoop):
799 (WebCore::WorkerRunLoop::setSharedTimer):
800 (WebCore::WorkerRunLoop::resetSharedTimer):
801 (WebCore::WorkerRunLoop::run):
802 (WebCore::WorkerRunLoop::runInMode):
803 (WebCore::WorkerRunLoop::postTask):
804 (WebCore::WorkerRunLoop::postTaskForMode):
805 * dom/WorkerRunLoop.h:
806 (WebCore::WorkerRunLoop::Task::create):
807 (WebCore::WorkerRunLoop::Task::mode):
808 (WebCore::WorkerRunLoop::Task::performTask):
809 (WebCore::WorkerRunLoop::Task::Task):
811 2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
813 Reviewed by Eric Seidel.
815 https://bugs.webkit.org/show_bug.cgi?id=24034
816 Fix up Selection->VisibleSelection change.
818 * page/chromium/EventHandlerChromium.cpp:
819 (WebCore::EventHandler::passMousePressEventToSubframe): Renamed Selection
822 2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
824 Reviewed by Eric Seidel.
826 https://bugs.webkit.org/show_bug.cgi?id=24041
827 Correct Skia type conversion issues, fix Chromium Linux build.
829 * platform/graphics/chromium/FontLinux.cpp:
830 (WebCore::Font::drawGlyphs): changed parameters to RGBA32, not WebCore::Color.
832 2009-02-19 Jungshik Shin <jshin@chromium.org>
834 Reviewed by Eric Seidel.
836 https://bugs.webkit.org/show_bug.cgi?id=20531
837 Chromium-part follow-up to the patch landed in r40636
839 Remove a static member function alternateFamilyName
840 from Chromium's Win/Linux ports of FontCache. In r40636,
841 alternateFamilyName was customized using #ifdef PLATFORM(WIN_OS).
842 So, there's no more need for the static member function per
845 * platform/graphics/chromium/FontCacheChromiumWin.cpp:
846 * platform/graphics/chromium/FontCacheLinux.cpp:
848 2009-02-19 Simon Fraser <simon.fraser@apple.com>
850 Reviewed by Adele Peterson.
852 Call documentWillBecomeInactive() from Document::detach to ensure that
853 media elements are shut down, because they may be kept alive by references
854 from JS past document teardown.
856 documentWillBecomeInactive() calls renderView()->willMoveOffscreen(), so no
857 need to do that in detach() as well.
859 We no longer need to call documentWillBecomeInactive() from ~Page() (which
860 was added for <https://bugs.webkit.org/show_bug.cgi?id=21116>), since this
861 supersedes that change.
864 (WebCore::Document::detach):
866 (WebCore::Page::~Page):
868 2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
870 Reviewed by Eric Seidel.
872 https://bugs.webkit.org/show_bug.cgi?id=24028
873 Fix up Skia path changes.
875 * platform/graphics/skia/GraphicsContextSkia.cpp:
876 (WebCore::GraphicsContext::strokePath): Removed illegal indirection.
877 * platform/graphics/skia/PathSkia.cpp:
878 (WebCore::boundingBoxForCurrentStroke): Changed call name.
880 2009-02-19 Gustavo Noronha Silva <gns@gnome.org>
882 Reviewed by Alexey Proskuryakov.
884 Ignore ports on local URLs. This fixes a regression in
885 fast/loader/file-URL-with-port-number.html
887 * platform/network/soup/ResourceHandleSoup.cpp:
888 (WebCore::ResourceHandle::startGio):
890 2009-02-19 Gustavo Noronha Silva <gns@gnome.org>
892 Reviewed by Alexey Proskuryakov.
894 https://bugs.webkit.org/show_bug.cgi?id=24011
895 KURL's setPort doesn't unset port if 0 is given
897 Make setPort remove port if 0 is given to it, as promised by the
898 comment in KURL's header.
901 (WebCore::KURL::setPort):
903 2009-02-18 Dan Bernstein <mitz@apple.com>
905 Reviewed by Brady Eidson.
907 - WebCore part of fixing <rdar://problem/6507512> Crash in iChat at CSSStyleSelector::adjustRenderStyle
909 The crash results from re-entry into
910 CSSMutableStyleDeclaration::setCssText, which in turn is caused by
911 the first style change causing a cached image to load from the memory
912 cache, causing load delegate dispatch, and iChat's delegate method
913 calling back into WebKit.
915 The workaround is to use defer delegate callbacks for memory cache. In
916 this case, deferring callbacks during image load event dispatch was
917 found to be sufficient.
919 The crash is a regression. See also the discussion in
920 <https://bugs.webkit.org/show_bug.cgi?id=22521>.
922 * WebCore.base.exp: Added
923 Settings::setNeedsIChatMemoryCacheCallsQuirk().
925 (WebCore::Document::dispatchImageLoadEventsNow): If the quirk is
926 enabled, defer memory cache callbacks during image load event dispatch.
928 (WebCore::Settings::Settings): Initialize
929 m_needsIChatMemoryCacheCallsQuirk.
930 (WebCore::Settings::setNeedsIChatMemoryCacheCallsQuirk): Added this
933 (WebCore::Settings::needsIChatMemoryCacheCallsQuirk): Added this getter.
935 2009-02-18 Adam Roben <aroben@apple.com>
937 Export WebCore::handCursor and Cursor.h
939 Reviewed by John Sullivan.
941 * WebCore.base.exp: Added WebCore::handCursor.
942 * WebCore.xcodeproj/project.pbxproj: Made Cursor.h private.
944 2009-02-18 Ojan Vafai <ojan@chromium.org>
946 Reviewed by Alexey Proskuryakov.
948 https://bugs.webkit.org/show_bug.cgi?id=23992
949 REGRESSION: crash on windows loading http://www.stickam.com/liveStreams.do
951 Unable to reduce to a layout test.
954 (WebCore::Frame::contentRenderer):
956 2009-02-18 Evan Stade <estade@chromium.org>
958 Reviewed by Eric Seidel.
960 https://bugs.webkit.org/show_bug.cgi?id=23861
961 Stroke font outlines on chromium linux
963 TEST=LayoutTests/svg/custom/pointer-events-text.svg
965 * platform/graphics/chromium/FontLinux.cpp:
966 (WebCore::Font::drawGlyphs):
968 2009-02-18 Evan Stade <estade@chromium.org>
970 Reviewed by Eric Seidel.
972 https://bugs.webkit.org/show_bug.cgi?id=23860
973 Resync some graphics/skia files with their chromium counterparts
975 This comes from chromium patches <http://codereview.chromium.org/17633>
976 and <http://codereview.chromium.org/17454>
978 * platform/graphics/skia/GraphicsContextSkia.cpp:
979 (WebCore::GraphicsContext::clipPath):
980 (WebCore::GraphicsContext::fillPath):
981 * platform/graphics/skia/PlatformContextSkia.cpp:
982 (PlatformContextSkia::addPath):
983 (PlatformContextSkia::currentPath):
984 * platform/graphics/skia/PlatformContextSkia.h:
986 2009-02-18 Gustavo Noronha Silva <gns@gnome.org>
990 Build fix after r41060.
994 2009-02-18 Dimitri Glazkov <dglazkov@chromium.org>
996 Reviewed by Eric Seidel.
998 https://bugs.webkit.org/show_bug.cgi?id=24005
999 Add an include to fix Chromium build.
1001 * page/animation/AnimationController.cpp: Add UnusedParam.h include.
1003 2009-02-18 Gustavo Noronha Silva <gns@gnome.org>
1005 Reviewed by Holger Freyther.
1007 Fix symbols.filter location, and add other missing files to the
1008 autotools build, so that make dist works.
1012 2009-02-18 Zan Dobersek <zandobersek@gmail.com>
1014 Rubber-stamped by Holger Hans Peter Freyther.
1016 Allow POST method for local requests.
1018 * platform/network/soup/ResourceHandleSoup.cpp:
1019 (WebCore::ResourceHandle::startGio):
1021 2009-02-18 Gustavo Noronha Silva <gns@gnome.org>
1023 Reviewed by Holger Hans Peter Freyther.
1025 Use KURL in startGio instead of passing a string with the URL, so
1026 that we can handle removing refs and queries more elegantly. This
1027 is fixing more regressions that came from the curl->soup switch.
1029 Original work by Zan Dobersek.
1031 * platform/network/ResourceHandle.h:
1032 * platform/network/soup/ResourceHandleSoup.cpp:
1033 (WebCore::ResourceHandle::start):
1034 (WebCore::ResourceHandle::startGio):
1036 2009-02-18 Holger Hans Peter Freyther <zecke@selfish.org>
1038 Reviewed by Alexey Proskuryakov.
1040 Implement ResourceHandle::loadResourceSynchronously in ResourceHandleSoup.cpp
1042 The implementation is needed to have synchronous loading, e.g. for
1043 JavaScript interaction. This is fixing various regressions that
1044 came from the curl->soup switch.
1046 * platform/network/soup/ResourceHandleSoup.cpp:
1047 (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
1048 (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader):
1049 (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
1050 (WebCore::WebCoreSynchronousLoader::didReceiveData):
1051 (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1052 (WebCore::WebCoreSynchronousLoader::didFail):
1053 (WebCore::WebCoreSynchronousLoader::run):
1054 (WebCore::ResourceHandle::loadResourceSynchronously):
1056 2009-02-18 Xan Lopez <xan@gnome.org>
1058 Reviewed by Mark Rowe.
1060 https://bugs.webkit.org/show_bug.cgi?id=23989
1062 Based on a patch by Bo Yang <techrazy.yang@gmail.com>
1064 Make the cursor cache global, that's all we really need and
1065 otherwise we can miss cursor transitions in some situations (see
1066 the bug for one testcase). Also remove some now useless code.
1068 * platform/Widget.h:
1069 * platform/gtk/WidgetGtk.cpp:
1070 (WebCore::Widget::Widget):
1071 (WebCore::Widget::~Widget):
1072 (WebCore::Widget::setCursor):
1074 2009-02-17 Adam Roben <aroben@apple.com>
1078 * loader/FrameLoader.cpp:
1079 (WebCore::toPlugInElement): Don't rely on #if being processed before
1082 2009-02-17 David Levin <levin@chromium.org>
1084 Reviewed by Alexey Proskuryakov.
1086 Bug 23977: Unnecessary timer related headers in files.
1087 <https://bugs.webkit.org/show_bug.cgi?id=23977>
1089 No observable change in behavior, so no test.
1092 * dom/WorkerRunLoop.cpp:
1093 * dom/WorkerRunLoop.h:
1095 2009-02-17 Peter Abrahamsen <rainhead@gmail.com>
1097 Reviewed by Sam Weinig.
1099 https://bugs.webkit.org/show_bug.cgi?id=23958
1100 <rdar://problem/6587815>
1102 Updated XMLHttpRequest with new header names from the latest Access
1103 Control draft: http://www.w3.org/TR/access-control/
1104 - Access-Control-Origin becomes Access-Control-Allow-Origin
1105 - Access-Control-Credentials becomes Access-Control-Allow-Credentials
1107 * xml/XMLHttpRequest.cpp:
1108 (WebCore::XMLHttpRequest::accessControlCheck):
1110 2009-02-17 Kevin Ollivier <kevino@theolliviers.com>
1112 wx build fix. Add missing constructor used for empty values.
1114 * platform/graphics/wx/FontPlatformData.h:
1115 (WebCore::FontPlatformData::FontPlatformData):
1117 2009-02-17 Antti Koivisto <antti@apple.com>
1119 Reviewed by Dave Kilzer.
1121 <rdar://problem/6592446> dynamically updating page doesn't seem to draw when updated
1123 Need update after callback.
1125 * bindings/js/JSCustomPositionCallback.cpp:
1126 (WebCore::JSCustomPositionCallback::handleEvent):
1127 * bindings/js/JSCustomPositionErrorCallback.cpp:
1128 (WebCore::JSCustomPositionErrorCallback::handleEvent):
1130 2009-02-17 Eric Carlson <eric.carlson@apple.com>
1132 Reviewed by Antti Koivisto.
1134 https://bugs.webkit.org/show_bug.cgi?id=23917
1135 Allow a WebKit plug-in to act as a proxy for the <audio> and <video>
1138 * DerivedSources.make: add media element proxy exports to .exp file when feature is defined.
1140 * WebCore.VideoProxy.exp: New, define the informal protocol exported by a media element proxy.
1142 * WebCore.xcodeproj/project.pbxproj: Add MediaPlayerProxy.h.
1144 * html/HTMLMediaElement.cpp:
1145 (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_needWidgetUpdate.
1146 (WebCore::HTMLMediaElement::attributeChanged): Don't detach+attach when PLUGIN_PROXY_FOR_VIDEO, the
1147 proxy plug-in handles the poster frame.
1148 (WebCore::HTMLMediaElement::rendererIsNeeded): New logic for PLUGIN_PROXY_FOR_VIDEO.
1149 (WebCore::HTMLMediaElement::createRenderer): Create RenderPartObject when PLUGIN_PROXY_FOR_VIDEO.
1150 (WebCore::HTMLMediaElement::attach): Set m_needWidgetUpdate when PLUGIN_PROXY_FOR_VIDEO
1151 (WebCore::HTMLMediaElement::load): Don't reallocate MediaPlayer when PLUGIN_PROXY_FOR_VIDEO, we keep the
1152 same plug-in for the life of the element.
1153 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): update m_networkState when media player
1154 network state changes to EMPTY, otherwise we can get out of sync with engine.
1155 (WebCore::HTMLMediaElement::defaultEventHandler): pass event to widget when PLUGIN_PROXY_FOR_VIDEO
1156 (WebCore::HTMLMediaElement::deliverNotification): New, deliver notification from proxy plug-in to
1158 (WebCore::HTMLMediaElement::setMediaPlayerProxy): New, pass proxy object to media player.
1159 (WebCore::HTMLMediaElement::initialURL): New, return the url from the "src" attr or the appropriate
1160 <source> element to be used as the initial url for the proxy.
1161 (WebCore::HTMLMediaElement::finishParsingChildren): New, allocate MediaPlayer and update widget.
1162 * html/HTMLMediaElement.h: Declare new methods for proxy, add m_needWidgetUpdate.
1163 (WebCore::HTMLMediaElement::setNeedWidgetUpdate):
1165 * html/HTMLVideoElement.cpp:
1166 (WebCore::HTMLVideoElement::attach): Poster image is handled by proxy when PLUGIN_PROXY_FOR_VIDEO.
1167 (WebCore::HTMLVideoElement::parseMappedAttribute): Ditto.
1168 * html/HTMLVideoElement.h:
1170 * loader/FrameLoader.cpp:
1171 (WebCore::toPlugInElement): Allow cast if element is <video> or <audio>
1173 * platform/graphics/MediaPlayer.cpp:
1174 (WebCore::MediaPlayer::MediaPlayer): Remove white space.
1175 (WebCore::MediaPlayer::setPoster): New, forward call to private player.
1176 (WebCore::MediaPlayer::deliverNotification): Ditto.
1177 (WebCore::MediaPlayer::setMediaPlayerProxy): Ditto.
1178 * platform/graphics/MediaPlayer.h:
1179 (WebCore::MediaPlayer::mediaPlayerClient):
1181 * platform/graphics/mac/MediaPlayerProxy.h: New, defines media player proxy interface.
1183 * rendering/RenderPart.cpp:
1184 (WebCore::RenderPart::RenderPart): Change constructor to take Element* instead of Node* as a
1185 non-element node doesn't need a renderer
1186 * rendering/RenderPart.h: Ditto.
1188 * rendering/RenderPartObject.cpp:
1189 (WebCore::RenderPartObject::RenderPartObject): Ditto.
1190 (WebCore::RenderPartObject::updateWidget): Package params for proxy plug-in when element is
1192 * rendering/RenderPartObject.h:
1194 2009-02-17 David Hyatt <hyatt@apple.com>
1196 Reviewed by Eric Seidel
1198 Fix for https://bugs.webkit.org/show_bug.cgi?id=23985
1200 Don't allow legends to be anything but display:block.
1202 Added fast/forms/inline-ignored-on-legend.html
1206 * WebCore.vcproj/WebCore.vcproj:
1207 * WebCore.xcodeproj/project.pbxproj:
1208 * WebCoreSources.bkl:
1210 * html/HTMLLegendElement.cpp:
1211 * html/HTMLLegendElement.h:
1212 * rendering/RenderLegend.cpp: Removed.
1213 * rendering/RenderLegend.h: Removed.
1214 * wml/WMLInsertedLegendElement.cpp:
1215 * wml/WMLInsertedLegendElement.h:
1217 2009-02-13 Brett Wilson <brettw@dhcp-172-22-71-167.mtv.corp.google.com>
1219 Reviewed by Simon Fraser.
1221 https://bugs.webkit.org/attachment.cgi?id=27666
1222 Fix Chromium build build: forgotten include in RenderObject, sync
1223 RenderTheme to the recent changes in RenderObject.
1225 * rendering/RenderObject.cpp:
1226 * rendering/RenderThemeChromiumMac.mm:
1227 (WebCore::RenderThemeChromiumMac::updatePressedState):
1229 2009-02-17 Gustavo Noronha Silva <gns@gnome.org>
1231 Reviewed by Darin Adler.
1233 https://bugs.webkit.org/show_bug.cgi?id=22966
1234 crash when destroying a webview that opened a page containing <script>
1237 Fix m_group being set to 0 instead of to m_singlePageGroup when
1238 GroupName is set to empty
1241 (WebCore::Page::setGroupName):
1243 2009-02-16 Beth Dakin <bdakin@apple.com>
1245 Reviewed by Sam Weinig.
1247 Fix for <rdar://problem/6386623>
1249 I made m_numParsedProperties and m_maxParsedProperties unsigned
1250 instead of int, and then added an early return from addPropery() if
1251 m_maxParsedProperties exceeds the max value.
1253 * css/CSSParser.cpp:
1254 (WebCore::CSSParser::addProperty):
1255 (WebCore::CSSParser::rollbackLastProperties):
1256 (WebCore::CSSParser::clearProperties):
1257 (WebCore::CSSParser::createFontFaceRule):
1258 (WebCore::CSSParser::deleteFontFaceOnlyValues):
1261 2009-02-16 Justin Garcia <justin.garcia@apple.com>
1263 Reviewed by Mark Rowe.
1265 https://bugs.webkit.org/show_bug.cgi?id=16309
1266 HTML5: The third execCommand argument for insert{un}orderedlist should be ignored
1268 When we originally implemented this command, MSDN documentation said that IE set the
1269 id attribute of inserted lists to the third argument to execCommand, but IE doesn't
1270 do this nor do any other browsers.
1272 * editing/EditorCommand.cpp:
1273 (WebCore::executeInsertOrderedList):
1274 (WebCore::executeInsertUnorderedList):
1275 * editing/IndentOutdentCommand.cpp:
1276 (WebCore::IndentOutdentCommand::outdentParagraph):
1277 * editing/InsertListCommand.cpp:
1278 (WebCore::InsertListCommand::insertList):
1279 (WebCore::InsertListCommand::InsertListCommand):
1280 (WebCore::InsertListCommand::doApply):
1281 * editing/InsertListCommand.h:
1282 (WebCore::InsertListCommand::create):
1284 2009-02-16 Dan Bernstein <mitz@apple.com>
1286 Reviewed by Geoffrey Garen.
1288 - fix <rdar://problem/6561077> REGRESSION (r39634): Unable to select an item in stocks widget with the mouse
1290 Test: platform/mac/fast/events/pointer-events-dashboard.html
1292 * css/CSSStyleSelector.cpp:
1293 (WebCore::CSSStyleSelector::applyProperty): Do not apply the
1294 pointer-events property in Dashboard backwards compatibility mode,
1295 in order to work around misuse of that property by the Stocks widget.
1297 2009-02-16 Justin Garcia <justin.garcia@apple.com>
1299 Reviewed by Eric Seidel.
1301 https://bugs.webkit.org/show_bug.cgi?id=15381
1302 execCommand justify modifies the contentEditable node
1304 * editing/CompositeEditCommand.cpp:
1305 (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): Avoid modifying not just
1306 the body element, but any root editable element.
1308 2009-02-16 Chris Fleizach <cfleizach@apple.com>
1310 Reviewed by Adele Peterson.
1312 Bug 23979: AX: alt tag not returned for <input type="image">
1313 https://bugs.webkit.org/show_bug.cgi?id=23979
1315 Test: accessibility/input-image-alt.html
1317 * page/AccessibilityRenderObject.cpp:
1318 (WebCore::AccessibilityRenderObject::accessibilityDescription):
1320 2009-02-16 Kevin Watters <kevinwatters@gmail.com>
1322 Reviewed by Kevin Ollivier.
1324 The ref data is not properly set unless we use the CreateMatrix function.
1326 https://bugs.webkit.org/show_bug.cgi?id=23978
1328 * platform/graphics/wx/TransformationMatrixWx.cpp:
1329 (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
1331 2009-02-16 Dan Bernstein <mitz@apple.com>
1333 Reviewed by John Sullivan.
1335 - fix <rdar://problem/6516829> FontPlatformData constructor passes NULL to CTFontCopyGraphicsFont and CTFontGetPlatformFont
1337 * platform/graphics/FontCache.cpp:
1338 (WebCore::FontDataCacheKeyTraits::emptyValue): Changed to use the
1339 FontPlatformData(float, bool, bool) constructor.
1340 * platform/graphics/mac/FontCacheMac.mm:
1341 (WebCore::FontCache::createFontPlatformData): Changed to pass a valid
1342 NSFont to the FontPlatformData constructor, instead of implicitly
1343 passing 0 and then calling setFont().
1344 * platform/graphics/mac/FontPlatformData.h: Made the NSFont parameter
1345 of the constructor mandatory.
1347 2009-02-15 David Kilzer <ddkilzer@apple.com>
1349 Move duplicate caretWidth constants to RenderObject.h
1351 Reviewed by Dan Bernstein.
1353 No test since no change in behavior.
1355 * rendering/RenderBlock.cpp:
1356 (WebCore::RenderBlock::localCaretRect): Removed caretWidth.
1357 * rendering/RenderBox.cpp:
1358 (WebCore::RenderBox::localCaretRect): Ditto.
1359 * rendering/RenderObject.h: Added caretWidth definition.
1360 * rendering/RenderText.cpp:
1361 (WebCore::RenderText::localCaretRect): Removed caretWidth.
1363 2009-02-13 Dimitri Glazkov <dglazkov@chromium.org>
1365 Reviewed by Eric Seidel.
1367 https://bugs.webkit.org/show_bug.cgi?id=23955
1368 V8HTMLPlugInCustom returns undefined, which fools interceptors.
1370 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
1371 (WebCore::NAMED_PROPERTY_GETTER): Use deferToInterceptor() return value.
1372 (WebCore::NAMED_PROPERTY_SETTER): Ditto.
1373 (WebCore::INDEXED_PROPERTY_GETTER): Ditto.
1374 (WebCore::INDEXED_PROPERTY_SETTER): Ditto.
1376 2009-02-13 Dimitri Glazkov <dglazkov@chromium.org>
1378 Reviewed by Eric Seidel.
1380 https://bugs.webkit.org/show_bug.cgi?id=23954
1381 Add V8 custom bindings for CanvasRenderingContext2D.
1383 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: Added.
1385 (WebCore::toCanvasStyle):
1386 (WebCore::ACCESSOR_GETTER):
1387 (WebCore::ACCESSOR_SETTER):
1389 2009-02-13 Anders Carlsson <andersca@apple.com>
1391 Reviewed by Darin Adler and Dan Bernstein.
1393 <rdar://problem/6583187>
1395 * page/NavigatorBase.cpp:
1396 Handle PPC64 and X86_64 as well.
1398 2009-02-13 Darin Adler <darin@apple.com>
1400 Reviewed by Mark Rowe.
1402 Fix broken tokenizer regression test that reflected a lifetime bug
1403 in the document.write optimization. The test failure was trivial to
1404 reproduce in COLLECT_ON_EVERY_ALLOCATION mode.
1406 * bindings/js/JSHTMLDocumentCustom.cpp:
1407 (WebCore::documentWrite): Convert strings to String rather than passing
1408 the pointer and length to SegmentedString. The optimization is thus
1409 mostly gone. However, there are two ways to bring it back: 1) Apply
1410 the patch that makes UString and String share the same buffers.
1411 2) Add a UString feature to SegmentedString; simple to do but might
1412 risk slowing down normal document parsing.
1414 2009-02-13 Adam Treat <adam.treat@torchmobile.com>
1416 Caught by Darin Adler.
1418 No reason to check m_tokenizer twice for 0 in a row.
1421 (WebCore::Document::write):
1423 2009-02-13 Lyon Chen <lyon.chen@torchmobile.com>
1425 Reviewed by Dave Hyatt.
1427 Take into account y() + height() when calculating getLowerRightCorner.
1429 * dom/ContainerNode.cpp:
1430 (WebCore::ContainerNode::getLowerRightCorner):
1432 2009-02-13 Antti Koivisto <antti@apple.com>
1434 Reviewed by Dave Hyatt.
1436 Most of this code was in RenderBox, restore the copyright lines.
1438 * rendering/RenderBoxModelObject.cpp:
1439 * rendering/RenderBoxModelObject.h:
1441 2009-02-13 David Hyatt <hyatt@apple.com>
1443 Get rid of printBoxDecorations, since it is dead code.
1445 Reviewed by Dan Bernstein
1447 * rendering/RenderObject.h:
1449 2009-02-13 Adam Treat <adam.treat@torchmobile.com>
1451 Reviewed by Darin Adler.
1453 https://bugs.webkit.org/show_bug.cgi?id=23952
1454 Add Document::write overload which takes a SegmentedString since this
1455 is what the tokenizer expects anyway. Modified JSHTMLDocument so it once
1456 again calls Document::write instead of injecting the string directly into
1457 the tokenizer. This ensures that all document.write's are funneled through
1458 one method again, but should still be just as fast for JSHTMLDocumentCustom.
1460 * bindings/js/JSHTMLDocumentCustom.cpp:
1461 (WebCore::documentWrite):
1463 (WebCore::Document::write):
1466 2009-02-13 David Hyatt <hyatt@apple.com>
1468 Reviewed by Simon Fraser
1470 Remove updateWidgetPosition on RenderObject. Change RenderView's set of widgets
1471 to have a tighter type: RenderWidget instead of RenderObject. Devirtualize
1472 updateWidgetPosition, since all RenderWidgets (except for applets) are now
1475 * rendering/RenderObject.cpp:
1476 * rendering/RenderObject.h:
1477 * rendering/RenderPart.cpp:
1478 * rendering/RenderPart.h:
1479 * rendering/RenderView.cpp:
1480 (WebCore::RenderView::updateWidgetPositions):
1481 (WebCore::RenderView::addWidget):
1482 (WebCore::RenderView::removeWidget):
1483 * rendering/RenderView.h:
1484 * rendering/RenderWidget.cpp:
1485 (WebCore::RenderWidget::updateWidgetPosition):
1486 * rendering/RenderWidget.h:
1488 2009-02-13 David Hyatt <hyatt@apple.com>
1490 Reviewed by Eric Seidel
1492 Remove isEditable() on RenderObject. It is dead code.
1494 * rendering/RenderObject.cpp:
1495 * rendering/RenderObject.h:
1497 2009-02-13 David Hyatt <hyatt@apple.com>
1499 Reviewed by Eric Seidel
1501 Add isTextControl() to RenderObject. Patch call sites thats asked isTextField() || isTextArea() to just use
1502 isTextControl() instead.
1504 Add a toRenderTextControl converter for doing checked casting to RenderTextControls.
1507 (WebCore::Document::setFocusedNode):
1508 * dom/InputElement.cpp:
1509 (WebCore::InputElement::updateSelectionRange):
1510 * editing/ReplaceSelectionCommand.cpp:
1511 (WebCore::ReplacementFragment::ReplacementFragment):
1512 * editing/TextIterator.cpp:
1513 (WebCore::TextIterator::handleReplacedElement):
1514 * html/HTMLInputElement.cpp:
1515 (WebCore::HTMLInputElement::selectionStart):
1516 (WebCore::HTMLInputElement::selectionEnd):
1517 (WebCore::HTMLInputElement::setSelectionStart):
1518 (WebCore::HTMLInputElement::setSelectionEnd):
1519 (WebCore::HTMLInputElement::select):
1520 (WebCore::HTMLInputElement::defaultEventHandler):
1521 (WebCore::HTMLInputElement::selection):
1522 * html/HTMLTextAreaElement.cpp:
1523 (WebCore::HTMLTextAreaElement::selectionStart):
1524 (WebCore::HTMLTextAreaElement::selectionEnd):
1525 (WebCore::HTMLTextAreaElement::setSelectionStart):
1526 (WebCore::HTMLTextAreaElement::setSelectionEnd):
1527 (WebCore::HTMLTextAreaElement::select):
1528 (WebCore::HTMLTextAreaElement::setSelectionRange):
1529 (WebCore::HTMLTextAreaElement::appendFormData):
1530 (WebCore::HTMLTextAreaElement::updateValue):
1531 (WebCore::HTMLTextAreaElement::selection):
1532 * page/AccessibilityRenderObject.cpp:
1533 (WebCore::AccessibilityRenderObject::isNativeTextControl):
1534 (WebCore::AccessibilityRenderObject::text):
1535 (WebCore::AccessibilityRenderObject::selectedText):
1536 (WebCore::AccessibilityRenderObject::selectedTextRange):
1537 (WebCore::AccessibilityRenderObject::setSelectedTextRange):
1538 (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
1539 (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
1540 (WebCore::AccessibilityRenderObject::observableObject):
1542 (WebCore::Frame::notifyRendererOfSelectionChange):
1543 * rendering/RenderObject.h:
1544 (WebCore::RenderObject::isTextControl):
1545 (WebCore::objectIsRelayoutBoundary):
1546 * rendering/RenderTextControl.h:
1547 (WebCore::RenderTextControl::isTextControl):
1548 (WebCore::toRenderTextControl):
1549 * rendering/TextControlInnerElements.cpp:
1550 (WebCore::TextControlInnerTextElement::defaultEventHandler):
1551 * wml/WMLInputElement.cpp:
1552 (WebCore::WMLInputElement::select):
1553 (WebCore::WMLInputElement::defaultEventHandler):
1554 (WebCore::WMLInputElement::isConformedToInputMask):
1556 2009-02-13 David Hyatt <hyatt@apple.com>
1558 Get rid of isEdited/setEdited on RenderObject. Devirtualize isEdited/setEdited on RenderTextControl.
1559 Callers were already asking if the renderer was a text field (or a text area), so it was especially
1560 pointless to waste a second virtual function call after making one just to determine the object type.
1562 Reviewed by Simon Fraser
1565 (WebCore::Document::setFocusedNode):
1566 * html/HTMLInputElement.cpp:
1567 (WebCore::HTMLInputElement::defaultEventHandler):
1568 * rendering/RenderObject.h:
1569 * rendering/RenderTextControl.h:
1570 (WebCore::RenderTextControl::isEdited):
1571 (WebCore::RenderTextControl::setEdited):
1573 2009-02-13 Scott Violet <sky@google.com>
1575 Reviewed by Eric Seidel.
1577 https://bugs.webkit.org/show_bug.cgi?id=23934
1578 Skia platform doesn't render text decoration shadows.
1580 Makes Skia render text decoration shadows correctly. We weren't
1581 preparing the SkPaint correctly and didn't have a couple of checks
1582 CG has. Additionally makes the fillColor/strokeColor methods
1585 This behavior is covered by existing layout tests (see bug for list).
1587 * platform/graphics/chromium/FontChromiumWin.cpp:
1588 (WebCore::Font::drawGlyphs):
1589 (WebCore::Font::drawComplexText):
1590 * platform/graphics/skia/GraphicsContextSkia.cpp:
1591 (WebCore::GraphicsContext::drawLineForText):
1592 * platform/graphics/skia/PlatformContextSkia.cpp:
1593 (PlatformContextSkia::effectiveFillColor):
1594 (PlatformContextSkia::effectiveStrokeColor):
1595 * platform/graphics/skia/PlatformContextSkia.h:
1597 2009-02-12 Darin Fisher <darin@chromium.org>
1599 Reviewed by Eric Seidel.
1601 https://bugs.webkit.org/show_bug.cgi?id=23944
1602 KURLGoogle's pre-parsed canonicalSpec constructor should take a CString
1605 * platform/KURLGoogle.cpp:
1606 (WebCore::KURLGooglePrivate::setUtf8):
1607 (WebCore::KURLGooglePrivate::setAscii):
1608 (WebCore::KURLGooglePrivate::init):
1609 (WebCore::KURLGooglePrivate::replaceComponents):
1610 (WebCore::KURL::KURL):
1611 * platform/KURLGooglePrivate.h:
1613 2009-02-13 David Hyatt <hyatt@apple.com>
1615 Remove leftmost/rightmost/lowestPosition from RenderObject. They only need to be called on boxes.
1617 Reviewed by Dan Bernstein
1619 * rendering/RenderBlock.cpp:
1620 (WebCore::RenderBlock::lowestPosition):
1621 (WebCore::RenderBlock::rightmostPosition):
1622 (WebCore::RenderBlock::leftmostPosition):
1623 * rendering/RenderLayer.cpp:
1624 (WebCore::RenderLayer::computeScrollDimensions):
1625 * rendering/RenderMedia.cpp:
1626 (WebCore::RenderMedia::lowestPosition):
1627 (WebCore::RenderMedia::rightmostPosition):
1628 (WebCore::RenderMedia::leftmostPosition):
1629 * rendering/RenderObject.h:
1630 * rendering/RenderTableSection.cpp:
1631 (WebCore::RenderTableSection::lowestPosition):
1632 (WebCore::RenderTableSection::rightmostPosition):
1633 (WebCore::RenderTableSection::leftmostPosition):
1635 2009-02-12 Simon Fraser <simon.fraser@apple.com>
1637 Fix build with ACCELERATED_COMPOSITING turned on.
1639 toRenderBox()->x() asserts for a layer on an inline; use
1640 m_owningLayer->renderBoxX() instead.
1642 * rendering/RenderLayerBacking.cpp:
1643 (WebCore::RenderLayerBacking::paintIntoLayer):
1645 2009-02-12 Darin Adler <darin@apple.com>
1647 Reviewed by Oliver Hunt.
1649 Speed up document.write a bit.
1651 * bindings/js/JSHTMLDocumentCustom.cpp:
1652 (WebCore::documentWrite): Added. Uses SegmentedString to avoid conversion from
1653 UString to String and to avoid appending strings. Also added code to handle
1654 newlines efficiently.
1655 (WebCore::JSHTMLDocument::write): Changed to use documentWrite.
1656 (WebCore::JSHTMLDocument::writeln): Ditto.
1659 (WebCore::Document::prepareToWrite): Added. Refactored the initialization part
1660 of write into a separate function for use in the JavaScript binding.
1661 (WebCore::Document::write): Changed to call prepareToWrite.
1663 * dom/Document.h: Added declaration for prepareToWrite.
1665 2009-02-13 Prasanth Ullattil <pullatti@trolltech.com>
1667 Reviewed by Simon Hausmann.
1669 Fixes crash in the Qt port on Windows with comboboxes
1671 The focusWidget in the input context is not reset properly.
1672 The QApplication::setFocusWidget() wont reset the IC if the reason is
1673 PopupFocusReason, this is not ideal. For the time being we are going
1674 to do this from webkit itself.
1676 * platform/qt/QWebPopup.cpp:
1677 (WebCore::QWebPopup::hidePopup):
1679 2009-02-12 Kevin Ollivier <kevino@theolliviers.com>
1681 wx build fix, typo while tweaking last patch for commit.
1683 * platform/wx/wxcode/gtk/fontprops.cpp:
1686 2009-02-12 miggilin <mr.diggilin@gmail.com>
1688 Reviewed by Kevin Ollivier.
1690 Use Cairo/PANGO to fix text measurements and implement proper
1691 non-kerned text drawing on wxGTK.
1693 https://bugs.webkit.org/show_bug.cgi?id=17727
1695 * platform/graphics/GlyphBuffer.h:
1696 * platform/graphics/wx/FontPlatformDataWx.cpp:
1697 (WebCore::fontWeightToWxFontWeight):
1698 * platform/graphics/wx/SimpleFontDataWx.cpp:
1699 (WebCore::SimpleFontData::platformWidthForGlyph):
1700 * platform/wx/wxcode/fontprops.h:
1701 * platform/wx/wxcode/gtk/fontprops.cpp:
1702 (wxFontProperties::wxFontProperties):
1704 * platform/wx/wxcode/gtk/non-kerned-drawing.cpp:
1705 (WebCore::pangoFontMap):
1706 (WebCore::createPangoFontForFont):
1707 (WebCore::createScaledFontForFont):
1708 (WebCore::pango_font_get_glyph):
1709 (WebCore::drawTextWithSpacing):
1710 * platform/wx/wxcode/non-kerned-drawing.h:
1712 2009-02-12 Chris Marrin <cmarrin@apple.com>
1714 Reviewed by Simon Fraser
1716 https://bugs.webkit.org/show_bug.cgi?id=23942
1718 Hook up 3D CSS transforms to the accelerated compositor backend.
1719 Not enabled by default.
1721 * page/animation/AnimationBase.cpp:
1722 (WebCore::blendFunc):
1723 (WebCore::ensurePropertyMap):
1724 * page/animation/CompositeAnimation.cpp:
1725 (WebCore::CompositeAnimationPrivate::updateTransitions):
1726 * page/animation/ImplicitAnimation.cpp:
1727 (WebCore::ImplicitAnimation::willNeedService):
1728 * page/animation/KeyframeAnimation.cpp:
1729 (WebCore::KeyframeAnimation::willNeedService):
1730 * platform/graphics/GraphicsLayer.cpp:
1731 (WebCore::GraphicsLayer::TransformValueList::makeFunctionList):
1732 (WebCore::GraphicsLayer::dumpProperties):
1733 * platform/graphics/mac/GraphicsLayerCA.mm:
1734 (WebCore::copyTransform):
1735 (WebCore::getValueFunctionNameForTransformOperation):
1736 (WebCore::GraphicsLayerCA::animateTransform):
1737 * rendering/RenderBox.cpp:
1738 (WebCore::RenderBox::updateBoxModelInfoFromStyle):
1739 * rendering/RenderLayer.cpp:
1740 (WebCore::RenderLayer::updateTransform):
1741 (WebCore::RenderLayer::hasTransformStyle3D):
1742 (WebCore::RenderLayer::hasPerspective):
1743 (WebCore::RenderLayer::perspectiveTransform):
1744 * rendering/RenderLayer.h:
1745 * rendering/RenderLayerBacking.cpp:
1746 (WebCore::RenderLayerBacking::updateGraphicsLayers):
1747 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1748 (WebCore::RenderLayerBacking::computeTransformOrigin):
1749 (WebCore::RenderLayerBacking::computePerspectiveOrigin):
1750 * rendering/RenderLayerBacking.h:
1751 * rendering/RenderLayerCompositor.cpp:
1752 (WebCore::RenderLayerCompositor::has3DContent):
1753 (WebCore::requiresCompositingLayerForTransform):
1754 (WebCore::RenderLayerCompositor::requiresCompositingLayer):
1755 (WebCore::RenderLayerCompositor::layerHas3DContent):
1756 * rendering/RenderLayerCompositor.h:
1758 2009-02-12 David Hyatt <hyatt@apple.com>
1760 Reviewed by Eric Seidel
1762 Get rid of containingBlockHeight(), since it had only one implementation (despite being virtual) and just returned
1763 containingBlock()->availableHeight(). The latter reads better anyway. Rename containingBlockWidth() to
1764 containingBlockWidthForContent() and move it to RenderBoxModelObject.
1766 * rendering/RenderBlock.cpp:
1767 (WebCore::RenderBlock::localCaretRect):
1768 * rendering/RenderBox.cpp:
1769 (WebCore::RenderBox::containingBlockWidthForContent):
1770 (WebCore::RenderBox::calcWidth):
1771 (WebCore::RenderBox::calcReplacedWidthUsing):
1772 * rendering/RenderBox.h:
1773 * rendering/RenderBoxModelObject.cpp:
1774 (WebCore::RenderBoxModelObject::relativePositionOffsetX):
1775 (WebCore::RenderBoxModelObject::relativePositionOffsetY):
1776 (WebCore::RenderBoxModelObject::containingBlockWidthForContent):
1777 * rendering/RenderBoxModelObject.h:
1778 * rendering/RenderInline.cpp:
1779 (WebCore::RenderInline::marginLeft):
1780 (WebCore::RenderInline::marginRight):
1781 * rendering/RenderObject.cpp:
1782 * rendering/RenderObject.h:
1783 * rendering/RenderSVGContainer.cpp:
1784 (WebCore::RenderSVGContainer::calcReplacedWidth):
1786 2009-02-12 Simon Fraser <simon.fraser@apple.com>
1788 Fix non-Mac builds by adding Matrix3DTransformOperation.* and
1789 PerspectiveTransformOperation.*. Cleaned out some cruft in
1790 the WebCore.vcproj fle.
1795 * WebCore.vcproj/WebCore.vcproj:
1797 2009-02-12 David Smith <catfish.man@gmail.com>
1799 Reviewed by Dave Hyatt.
1801 Fix https://bugs.webkit.org/show_bug.cgi?id=23935
1802 Nested :not() and non-simple selectors in :not() should be invalid
1804 * css/CSSGrammar.y: Reject nested :not()
1805 * css/CSSStyleSelector.cpp:
1806 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): ASSERT() rather than checking, since the parser enforces it now
1808 2009-02-12 Kevin Ollivier <kevino@theolliviers.com>
1812 * WebCoreSources.bkl:
1814 2009-02-12 Simon Fraser <simon.fraser@apple.com>
1816 Fix build with ACCELERATED_COMPOSITING turned on.
1818 Need to cast toRenderBox() in order to call overflowClipRect().
1820 * rendering/RenderLayerBacking.cpp:
1821 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1823 2009-02-12 Oliver Hunt <oliver@apple.com>
1825 Reviewed by NOBODY (Build fix).
1831 2009-02-12 David Hyatt <hyatt@apple.com>
1833 Rename getOverflowClipRect and getClipRect to overflowClipRect and clipRect. Move them to RenderBox, since these methods
1834 only apply to boxes. Devirtualize clipRect, since it was not subclassed. Move controlClip stuff to RenderBox also.
1836 Reviewed by Simon Fraser
1838 * editing/Editor.cpp:
1839 (WebCore::Editor::insideVisibleArea):
1840 * rendering/RenderBox.cpp:
1841 (WebCore::RenderBox::overflowClipRect):
1842 (WebCore::RenderBox::clipRect):
1843 * rendering/RenderBox.h:
1844 (WebCore::RenderBox::hasControlClip):
1845 (WebCore::RenderBox::controlClipRect):
1846 * rendering/RenderForeignObject.cpp:
1847 (WebCore::RenderForeignObject::paint):
1848 * rendering/RenderLayer.cpp:
1849 (WebCore::RenderLayer::calculateClipRects):
1850 (WebCore::RenderLayer::calculateRects):
1851 * rendering/RenderLayerBacking.cpp:
1852 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1853 * rendering/RenderObject.h:
1854 (WebCore::RenderObject::hasClip):
1855 (WebCore::RenderObject::hasOverflowClip):
1856 * rendering/RenderTable.cpp:
1857 (WebCore::RenderTable::overflowClipRect):
1858 * rendering/RenderTable.h:
1860 2009-02-12 Simon Fraser <simon.fraser@apple.com>
1862 Fix build with ACCELERATED_COMPOSITING turned on (simple copy/paste error)
1864 * platform/graphics/mac/GraphicsLayerCA.mm:
1865 (WebCore::GraphicsLayerCA::setBasicAnimation):
1867 2009-02-12 Julien Chaffraix <jchaffraix@webkit.org>
1871 Release build fix when VIDEO is disabled (it should also
1872 help the builds with WORKERS or XSLT disabled).
1874 * bindings/js/JSDOMWindowBase.cpp:
1875 (jsDOMWindowBaseAudio): Added an UNUSED_PARAM for exec and slot when
1877 (jsDOMWindowBaseWorker): Ditto for WORKERS.
1878 (jsDOMWindowBaseXSLTProcessor): Ditto for XSLT.
1880 2009-02-12 Eric Carlson <eric.carlson@apple.com>
1882 Reviewed by Simon Fraser.
1884 https://bugs.webkit.org/show_bug.cgi?id=23923
1885 Implement mediaPlayerVolumeChanged so a media engine can report autonomous volume changes.
1886 Supporting this requires that we know when we are processing a media engine callback so
1887 we don't turn around and tell the media player to change the volume when it is reporting
1890 * html/HTMLMediaElement.cpp:
1891 (WebCore::HTMLMediaElement::HTMLMediaElement): initialize m_processingMediaPlayerCallback
1892 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): call begin/endProcessingMediaPlayerCallback
1893 (WebCore::HTMLMediaElement::setNetworkState): logic split out of mediaPlayerNetworkStateChanged
1894 to make it easier to maintain m_processingMediaPlayerCallback.
1895 (WebCore::HTMLMediaElement::mediaPlayerReadyStateChanged): call begin/endProcessingMediaPlayerCallback
1896 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Ditto.
1897 (WebCore::HTMLMediaElement::mediaPlayerRepaint): Ditto.
1898 (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged): New
1899 (WebCore::HTMLMediaElement::updateVolume): Don't change media engine volume if we are processing
1900 a callback from the engine.
1901 * html/HTMLMediaElement.h:
1902 (WebCore::HTMLMediaElement::processingMediaPlayerCallback): New, return true if (m_processingMediaPlayerCallback>0)
1903 (WebCore::HTMLMediaElement::beginProcessingMediaPlayerCallback): New, increment m_processingMediaPlayerCallback
1904 (WebCore::HTMLMediaElement::endProcessingMediaPlayerCallback): New, decrement m_processingMediaPlayerCallback
1906 2009-02-12 Eric Carlson <eric.carlson@apple.com>
1908 Reviewed by Simon Fraser.
1910 Support MPEG content on Mac and Windows.
1911 <rdar://problem/5917509>
1912 https://bugs.webkit.org/show_bug.cgi?id=23495
1914 Test: media/audio-mpeg-supported.html
1916 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1917 (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
1919 * platform/graphics/win/QTMovieWin.cpp:
1920 (QTMovieWin::disableUnsupportedTracks):
1922 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: fix typo added in r40925
1924 2009-02-12 David Hyatt <hyatt@apple.com>
1926 Reviewed by Sam Weinig
1928 Move containsFloats, hasOverhangingFloats, shrinkToAvoidFloats and avoidsFloats down to
1929 RenderBox, since these methods only apply to boxes.
1931 * rendering/RenderBlock.cpp:
1932 (WebCore::RenderBlock::collapseMargins):
1933 (WebCore::RenderBlock::clearFloatsIfNeeded):
1934 (WebCore::RenderBlock::layoutBlockChildren):
1935 (WebCore::RenderBlock::clearFloats):
1936 (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
1937 (WebCore::RenderBlock::calcBlockPrefWidths):
1938 * rendering/RenderBlock.h:
1939 (WebCore::RenderBlock::containsFloats):
1940 (WebCore::RenderBlock::hasOverhangingFloats):
1941 * rendering/RenderBox.cpp:
1942 (WebCore::RenderBox::shrinkToAvoidFloats):
1943 (WebCore::RenderBox::avoidsFloats):
1944 * rendering/RenderBox.h:
1945 * rendering/RenderObject.cpp:
1946 * rendering/RenderObject.h:
1947 (WebCore::RenderObject::isFloatingOrPositioned):
1948 * rendering/RenderView.h:
1950 2009-02-12 Chris Marrin <cmarrin@apple.com>
1952 Reviewed by Dave Hyatt
1954 https://bugs.webkit.org/show_bug.cgi?id=23908
1956 Added parsing of 3d transform functions and properties
1957 (perspective, perspective-origin, transform-style-3d,
1958 and backface-visibility).
1960 Test: transforms/3d/cssmatrix-3d-interface.xhtml
1962 * css/CSSComputedStyleDeclaration.cpp:
1964 (WebCore::computedTransform):
1965 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1966 * css/CSSMutableStyleDeclaration.cpp:
1967 (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
1968 * css/CSSParser.cpp:
1969 (WebCore::CSSParser::parseValue):
1970 (WebCore::CSSParser::parseFillProperty):
1971 (WebCore::CSSParser::parseTransformOriginShorthand):
1972 (WebCore::TransformOperationInfo::TransformOperationInfo):
1973 (WebCore::CSSParser::parseTransform):
1974 (WebCore::CSSParser::parseTransformOrigin):
1975 (WebCore::CSSParser::parsePerspectiveOrigin):
1977 * css/CSSPrimitiveValue.h:
1978 (WebCore::CSSPrimitiveValue::isUnitTypeLength):
1979 * css/CSSPropertyNames.in:
1980 * css/CSSStyleSelector.cpp:
1981 (WebCore::CSSStyleSelector::adjustRenderStyle):
1982 (WebCore::convertToLength):
1983 (WebCore::CSSStyleSelector::applyProperty):
1984 (WebCore::CSSStyleSelector::mapFillSize):
1985 (WebCore::CSSStyleSelector::mapFillXPosition):
1986 (WebCore::CSSStyleSelector::mapFillYPosition):
1987 (WebCore::getTransformOperationType):
1988 (WebCore::CSSStyleSelector::createTransformOperations):
1989 * css/CSSValueKeywords.in:
1990 * css/WebKitCSSTransformValue.cpp:
1991 (WebCore::WebKitCSSTransformValue::cssText):
1992 * css/WebKitCSSTransformValue.h:
1993 (WebCore::WebKitCSSTransformValue::):
1994 * css/WebKitCSSTransformValue.idl:
1995 * platform/graphics/transforms/Matrix3DTransformOperation.cpp:
1996 * platform/graphics/transforms/Matrix3DTransformOperation.h:
1997 * platform/graphics/transforms/PerspectiveTransformOperation.cpp:
1998 * platform/graphics/transforms/PerspectiveTransformOperation.h:
1999 * platform/graphics/transforms/RotateTransformOperation.cpp:
2000 (WebCore::RotateTransformOperation::blend):
2001 * platform/graphics/transforms/RotateTransformOperation.h:
2002 (WebCore::RotateTransformOperation::RotateTransformOperation):
2003 * platform/graphics/transforms/ScaleTransformOperation.h:
2004 (WebCore::ScaleTransformOperation::ScaleTransformOperation):
2005 * platform/graphics/transforms/TransformOperation.h:
2006 (WebCore::TransformOperation::is3DOperation):
2007 * platform/graphics/transforms/TransformOperations.h:
2008 (WebCore::TransformOperations::has3DOperation):
2009 * platform/graphics/transforms/TranslateTransformOperation.h:
2010 (WebCore::TranslateTransformOperation::TranslateTransformOperation):
2012 2009-02-12 Kevin Ollivier <kevino@theolliviers.com>
2018 2009-02-12 Brady Eidson <beidson@apple.com>
2020 Reviewed by Darin Adler
2022 Fix potential ref-count or null-deref problems with C++ objects as Obj-C members.
2024 * platform/mac/SharedBufferMac.mm: Change to use RefPtr<> instead of ref()/deref().
2025 (-[WebCoreSharedBufferData dealloc]):
2026 (-[WebCoreSharedBufferData finalize]):
2027 (-[WebCoreSharedBufferData initWithSharedBuffer:]):
2029 2009-02-12 David Hyatt <hyatt@apple.com>
2031 Remove calcWidth from RenderObject. Nobody ever called it on RenderObjects.
2033 Reviewed by Sam Weinig
2035 * rendering/RenderObject.h:
2037 2009-02-12 David Hyatt <hyatt@apple.com>
2039 Reviewed by Mark Rowe
2041 Fix for regression where form controls would paint yellow highlights. The containsComposition check needs to
2042 null check node() now.
2044 * rendering/InlineTextBox.cpp:
2045 (WebCore::InlineTextBox::paint):
2047 2009-02-12 Simon Fraser <simon.fraser@apple.com>
2051 Change Animation::setDirection() to take the new enum value, and fix
2054 Fix build error in MediaPlayerPrivateQTKit.h.
2056 * css/CSSStyleSelector.cpp:
2057 (WebCore::CSSStyleSelector::mapAnimationDirection):
2058 * platform/animation/Animation.h:
2059 (WebCore::Animation::setDirection):
2060 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2062 2009-02-12 David Hyatt <hyatt@apple.com>
2064 Reviewed by Simon Fraser
2066 Remove the overrideSize methods from RenderObject. Devirtualize all of the accessors on RenderBox.
2068 * rendering/RenderBox.h:
2069 * rendering/RenderObject.h:
2071 2009-02-12 Eric Carlson <eric.carlson@apple.com>
2073 Darin Adler, Antti Koivisto, Holger Hans Peter Freyther
2075 Bug 23797: A platform should be able to use more than one media engine for <video> and <audio>
2076 https://bugs.webkit.org/show_bug.cgi?id=23797
2078 * WebCore.xcodeproj/project.pbxproj: add MediaPlayerPrivate.h
2080 * html/HTMLMediaElement.cpp:
2081 (WebCore::HTMLMediaElement::load): selectMediaURL now also returns a MIME type, pass it to
2082 MediaPlayer::load so it can choose the right media engine
2083 (WebCore::HTMLMediaElement::selectMediaURL): renamed from pickMedia. use MIMETypeRegistry
2084 functions to strip params from the url and extract the codecs parameter. call
2085 MediaPlayer::supportsType to see if we can open the file since only a media engine can
2086 answer questions about supported type+codecs.
2087 * html/HTMLMediaElement.h:
2089 * platform/MIMETypeRegistry.cpp:
2090 (WebCore::MIMETypeRegistry::getParameterFromMIMEType): New, find and return a MIME type parameter
2091 (WebCore::MIMETypeRegistry::stripParametersFromMIMEType): New, strip all parameters from a MIME type
2092 * platform/MIMETypeRegistry.h:
2094 * platform/graphics/MediaPlayer.cpp:
2095 (WebCore::NullMediaPlayerPrivate::NullMediaPlayerPrivate):
2096 (WebCore::NullMediaPlayerPrivate::load):
2097 (WebCore::NullMediaPlayerPrivate::cancelLoad):
2098 (WebCore::NullMediaPlayerPrivate::play):
2099 (WebCore::NullMediaPlayerPrivate::pause):
2100 (WebCore::NullMediaPlayerPrivate::naturalSize):
2101 (WebCore::NullMediaPlayerPrivate::hasVideo):
2102 (WebCore::NullMediaPlayerPrivate::setVisible):
2103 (WebCore::NullMediaPlayerPrivate::duration):
2104 (WebCore::NullMediaPlayerPrivate::currentTime):
2105 (WebCore::NullMediaPlayerPrivate::seek):
2106 (WebCore::NullMediaPlayerPrivate::seeking):
2107 (WebCore::NullMediaPlayerPrivate::setEndTime):
2108 (WebCore::NullMediaPlayerPrivate::setRate):
2109 (WebCore::NullMediaPlayerPrivate::paused):
2110 (WebCore::NullMediaPlayerPrivate::setVolume):
2111 (WebCore::NullMediaPlayerPrivate::networkState):
2112 (WebCore::NullMediaPlayerPrivate::readyState):
2113 (WebCore::NullMediaPlayerPrivate::maxTimeSeekable):
2114 (WebCore::NullMediaPlayerPrivate::maxTimeBuffered):
2115 (WebCore::NullMediaPlayerPrivate::dataRate):
2116 (WebCore::NullMediaPlayerPrivate::totalBytesKnown):
2117 (WebCore::NullMediaPlayerPrivate::totalBytes):
2118 (WebCore::NullMediaPlayerPrivate::bytesLoaded):
2119 (WebCore::NullMediaPlayerPrivate::setRect):
2120 (WebCore::NullMediaPlayerPrivate::paint):
2121 (WebCore::createNullMediaPlayer):
2122 Do nothing media player so MediaPlayer doesn't have to NULL check before calling current engine.
2124 (WebCore::MediaPlayerFactory::MediaPlayerFactory): New, factory constructor.
2125 (WebCore::installedMediaEngines): New, returns vector of all installed engines.
2126 (WebCore::addMediaEngine): New, add a media engine to the cache.
2127 (WebCore::chooseBestEngineForTypeAndCodecs): New, return an engine that might support a MIME type.
2128 (WebCore::MediaPlayer::MediaPlayer): create NULL media player so we have a default. Initialize m_currentMediaEngine.
2129 (WebCore::MediaPlayer::~MediaPlayer): don't need to delete m_private, it is now an OwnPtr.
2130 (WebCore::MediaPlayer::load): Take MIME type as well as url, since we need it to find the right
2131 media engine. If no MIME type is provided, try to devine one from the url. Choose a media engine
2132 based on the MIME type and codecs parameter.
2133 (WebCore::MediaPlayer::currentTime): Remove excess white space.
2134 (WebCore::MediaPlayer::supportsType): Take codecs param as well as MIME type. Return enum so we can
2135 indicate "maybe" condition.
2136 (WebCore::MediaPlayer::getSupportedTypes): Build up list of MIME types by consulting all engines.
2137 (WebCore::MediaPlayer::isAvailable): return true if any media engine is installed.
2139 * platform/graphics/MediaPlayer.h:
2140 (WebCore::MediaPlayer::):
2141 (WebCore::MediaPlayer::frameView): accessor function.
2143 * platform/graphics/MediaPlayerPrivate.h: New, declares abstract interface for media engines.
2144 (WebCore::MediaPlayerPrivateInterface::~MediaPlayerPrivateInterface):
2145 (WebCore::MediaPlayerPrivateInterface::totalBytesKnown):
2147 * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Add support for engine factory
2149 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2150 (WebCore::MediaPlayerPrivate::create): New, media engine factory function
2151 (WebCore::MediaPlayerPrivate::registerMediaEngine): Register engine with MediaPlayer factory
2152 (WebCore::MediaPlayerPrivate::load): URL is a const String.
2153 (WebCore::MediaPlayerPrivate::duration): Declare const.
2154 (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
2155 (WebCore::MediaPlayerPrivate::hasVideo): Ditto.
2156 (WebCore::MediaPlayerPrivate::networkState): Ditto.
2157 (WebCore::MediaPlayerPrivate::readyState): Ditto.
2158 (WebCore::MediaPlayerPrivate::maxTimeBuffered): Ditto.
2159 (WebCore::MediaPlayerPrivate::maxTimeSeekable): Ditto.
2160 (WebCore::MediaPlayerPrivate::maxTimeLoaded): Ditto.
2161 (WebCore::MediaPlayerPrivate::bytesLoaded): Ditto.
2162 (WebCore::MediaPlayerPrivate::totalBytesKnown): Ditto.
2163 (WebCore::MediaPlayerPrivate::totalBytes): Ditto.
2164 (WebCore::MediaPlayerPrivate::supportsType): Return MediaPlayer::SupportsType enum instead of bool.
2165 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
2166 (WebCore::MediaPlayerPrivate::isAvailable):
2168 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2169 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2170 (WebCore::MediaPlayerPrivateQTKit::create): New, media engine factory function
2171 (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): Register engine with MediaPlayer factory
2172 (WebCore::MediaPlayerPrivate::createQTMovieView): don't access MediaPlayer->m_frameView directly,
2173 use accessor function.
2174 (WebCore::MediaPlayerPrivate::setUpVideoRendering): Ditto.
2175 (WebCore::MediaPlayerPrivate::paint): Ditto.
2176 (WebCore::mimeTypeCache): New.
2177 (WebCore::MediaPlayerPrivate::getSupportedTypes): New, media engine factory function.
2178 (WebCore::MediaPlayerPrivate::supportsType): return MediaPlayer::SupportsType enum instead of bool
2179 (-[WebCoreMovieObserver initWithCallback:]): fix formatting
2181 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
2182 (WebCore::MediaPlayerPrivate::create):
2183 (WebCore::MediaPlayerPrivate::registerMediaEngine):
2184 (WebCore::MediaPlayerPrivate::supportsType):
2185 (WebCore::MediaPlayerPrivate::load): URL is a const String.
2186 * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
2187 (WebCore::MediaPlayerPrivate::isAvailable):
2189 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
2190 (WebCore::MediaPlayerPrivate::create): New, media engine factory function
2191 (WebCore::MediaPlayerPrivate::registerMediaEngine): New, register engine with MediaPlayer factory
2192 (WebCore::MediaPlayerPrivate::load): URL is a const String.
2193 (WebCore::MediaPlayerPrivate::paint): don't access MediaPlayer->m_frameView directly,
2194 use accessor function.
2195 (WebCore::mimeTypeCache): New.
2196 (WebCore::MediaPlayerPrivateQTWin::getSupportedTypes): New, media engine factory function.
2197 (WebCore::MediaPlayerPrivateQTWin::supportsType): return MediaPlayer::SupportsType enum instead of bool
2198 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
2200 2009-02-12 Julien Chaffraix <jchaffraix@webkit.org>
2202 Reviewed by Darin Adler.
2204 Test: fast/dom/prefixed-image-tag.xhtml
2206 Bug 23915: Remove setPrefix work-around in Document::createElement(QualifiedName, bool)
2208 Instead we now directly propage the QualifiedName inside the generated Factory.
2210 Test: fast/dom/prefixed-image-tag.xhtml
2213 (WebCore::Document::createElement): Removed the setPrefix work-around
2214 and replaced it with an ASSERT to catch mistakes inside the Factory code.
2215 Remove the unneeded ExceptionCode argument.
2217 (WebCore::Document::createElementNS): Removed ExceptionCode argument.
2218 * dom/Document.h: Updated the signature.
2219 * dom/XMLTokenizerLibxml2.cpp:
2220 (WebCore::XMLTokenizer::startElementNs): Removed ExceptionCode argument.
2221 * dom/XMLTokenizerQt.cpp: Ditto.
2222 (WebCore::XMLTokenizer::parseStartElement): Ditto.
2224 * dom/make_names.pl: Implemented the QualifiedName propogation logic
2227 2009-02-12 Simon Fraser <simon.fraser@apple.com>
2229 Reviewed by Dave Hyatt
2231 https://bugs.webkit.org/show_bug.cgi?id=23188
2233 Define enum values for Animation::direction(), and one for
2234 IterationCountInfinite to make the code more self-documenting.
2236 Order the member vars of Animation to optimize packing.
2238 * css/CSSComputedStyleDeclaration.cpp:
2239 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2240 * platform/animation/Animation.cpp:
2241 (WebCore::Animation::Animation):
2242 (WebCore::Animation::operator=):
2243 (WebCore::Animation::animationsMatch):
2244 * platform/animation/Animation.h:
2245 (WebCore::Animation::):
2246 (WebCore::Animation::direction):
2247 (WebCore::Animation::initialAnimationDirection):
2248 * platform/graphics/mac/GraphicsLayerCA.mm:
2249 (WebCore::GraphicsLayerCA::setBasicAnimation):
2250 (WebCore::GraphicsLayerCA::setKeyframeAnimation):
2252 2009-02-12 Christian Dywan <christian@twotoasts.de>
2254 Reviewed by Holger Freyther.
2256 * platform/network/soup/ResourceHandleSoup.cpp:
2257 (WebCore::ResourceHandle::startHttp): Don't use O_CLOEXEC for now.
2259 2009-02-12 Julien Chaffraix <jchaffraix@webkit.org>
2261 Reviewed by Darin Adler.
2263 Bug 23826: Potential bug with before/after rule while moving element from one document to another
2265 Moved the document before/after toggle from the constructor to insertedIntoDocument.
2267 Test: fast/css-generated-content/beforeAfter-interdocument.html
2269 * html/HTMLQuoteElement.cpp:
2270 (WebCore::HTMLQuoteElement::HTMLQuoteElement):
2271 (WebCore::HTMLQuoteElement::insertedIntoDocument):
2272 * html/HTMLQuoteElement.h:
2274 2009-02-12 David Hyatt <hyatt@apple.com>
2276 Reviewed by Simon Fraser
2278 Fix for https://bugs.webkit.org/show_bug.cgi?id=23912
2280 I have no idea why this broke. As far as I can tell the old code never should have worked in
2281 the first place. Add code to handleWheelEvent that will find an enclosing renderer for a node
2282 in order to attempt a wheel scroll.
2284 * page/EventHandler.cpp:
2285 (WebCore::EventHandler::handleWheelEvent):
2287 2009-02-12 David Hyatt <hyatt@apple.com>
2289 Move the functions that paint borders, box shadows and border images into RenderBoxModelObject. drawBorder and drawBorderArc, because they are used
2290 for outlines as well as borders, need to stay in RenderObject. Rename them to drawLineForBoxSide and drawArcForBoxSide in order to reflect their
2291 more generic use. Rename the BorderSide struct to BoxSide, since the concept of "side" is just a rectangle concept and not a border concept.
2293 Reviewed by Simon Fraser
2295 * rendering/InlineFlowBox.cpp:
2296 (WebCore::InlineFlowBox::paintFillLayer):
2297 (WebCore::InlineFlowBox::paintBoxShadow):
2298 (WebCore::InlineFlowBox::paintBoxDecorations):
2299 (WebCore::InlineFlowBox::paintMask):
2300 * rendering/RenderBlock.cpp:
2301 (WebCore::RenderBlock::paintColumns):
2302 * rendering/RenderBoxModelObject.cpp:
2303 (WebCore::RenderBoxModelObject::paintNinePieceImage):
2304 (WebCore::RenderBoxModelObject::paintBorder):
2305 (WebCore::RenderBoxModelObject::paintBoxShadow):
2306 * rendering/RenderBoxModelObject.h:
2307 * rendering/RenderFieldset.cpp:
2308 (WebCore::RenderFieldset::paintBorderMinusLegend):
2309 * rendering/RenderInline.cpp:
2310 (WebCore::RenderInline::paintOutlineForLine):
2311 * rendering/RenderObject.cpp:
2312 (WebCore::RenderObject::drawLineForBoxSide):
2313 (WebCore::RenderObject::drawArcForBoxSide):
2314 (WebCore::RenderObject::paintOutline):
2315 * rendering/RenderObject.h:
2317 (WebCore::RenderObject::hasBoxDecorations):
2318 * rendering/RenderTableCell.cpp:
2319 (WebCore::CollapsedBorders::addBorder):
2320 (WebCore::RenderTableCell::paintCollapsedBorder):
2322 2009-02-12 Eric Carlson <eric.carlson@apple.com>
2324 Reviewed by Simon Fraser
2326 Bug 18322: video element should have ui when scripting is disabled
2327 https://bugs.webkit.org/show_bug.cgi?id=18322
2329 * html/HTMLMediaElement.cpp:
2330 (WebCore::HTMLMediaElement::controls): always return 'true' when JavaScript is disabled.
2331 * manual-tests/media-controls-when-javascript-disabled.html: Added.
2333 2009-02-12 Dimitri Glazkov <dglazkov@chromium.org>
2335 Reviewed by Eric Seidel.
2337 https://bugs.webkit.org/show_bug.cgi?id=23906
2338 Add custom V8 bindings for HTMLPlugInElement.
2340 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp: Added.
2341 (WebCore::NAMED_PROPERTY_GETTER):
2342 (WebCore::NAMED_PROPERTY_SETTER):
2343 (WebCore::CALLBACK_FUNC_DECL):
2344 (WebCore::INDEXED_PROPERTY_GETTER):
2345 (WebCore::INDEXED_PROPERTY_SETTER):
2347 2009-02-12 Gustavo Noronha Silva <gns@gnome.org>
2349 Reviewed by Mark Rowe.
2351 [GTK] Soup backend must handle upload of multiple files
2352 https://bugs.webkit.org/show_bug.cgi?id=18343
2354 * platform/network/soup/ResourceHandleSoup.cpp:
2356 (WebCore::freeFileMapping):
2357 (WebCore::ResourceHandle::startHttp): Support multipart request bodies
2358 mmap'ing files to be uploaded.
2360 2009-02-12 Adam Treat <adam.treat@torchmobile.com>
2362 Fix the Qt build following r40871 which changed RenderObject::element()
2363 into RenderObject::node().
2365 * platform/qt/RenderThemeQt.cpp:
2366 (WebCore::RenderThemeQt::getMediaElementFromRenderObject):
2367 (WebCore::RenderThemeQt::getMediaControlForegroundColor):
2369 2009-02-12 Alexey Proskuryakov <ap@webkit.org>
2373 * platform/graphics/transforms/RotateTransformOperation.cpp: Include <algorithm>.
2375 2009-02-12 Jian Li <jianli@chromium.org>
2377 Reviewed by Alexey Proskuryakov.
2379 Change worker code to use different proxy class pointers.
2380 https://bugs.webkit.org/show_bug.cgi?id=23859
2382 This is a step towards using separate proxies in multi-process implementation.
2384 * bindings/js/WorkerScriptController.cpp:
2385 (WebCore::WorkerScriptController::evaluate):
2387 (WebCore::Worker::Worker):
2388 (WebCore::Worker::~Worker):
2389 (WebCore::Worker::postMessage):
2390 (WebCore::Worker::terminate):
2391 (WebCore::Worker::hasPendingActivity):
2392 (WebCore::Worker::notifyFinished):
2393 (WebCore::Worker::dispatchMessage):
2395 * dom/WorkerContext.cpp:
2396 (WebCore::WorkerContext::~WorkerContext):
2397 (WebCore::WorkerContext::reportException):
2398 (WebCore::WorkerContext::addMessage):
2399 (WebCore::WorkerContext::postMessage):
2400 (WebCore::WorkerContext::dispatchMessage):
2401 * dom/WorkerContext.h:
2402 * dom/WorkerContextProxy.h:
2403 * dom/WorkerMessagingProxy.cpp:
2404 (WebCore::MessageWorkerContextTask::performTask):
2405 (WebCore::MessageWorkerTask::performTask):
2406 (WebCore::WorkerContextProxy::create):
2407 (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
2408 (WebCore::WorkerMessagingProxy::~WorkerMessagingProxy):
2409 (WebCore::WorkerMessagingProxy::startWorkerContext):
2410 (WebCore::postConsoleMessageTask):
2411 (WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
2412 (WebCore::WorkerMessagingProxy::workerThreadCreated):
2413 * dom/WorkerMessagingProxy.h:
2414 * dom/WorkerObjectProxy.h:
2415 * dom/WorkerThread.cpp:
2416 (WebCore::WorkerThread::create):
2417 (WebCore::WorkerThread::WorkerThread):
2418 (WebCore::WorkerThread::workerThread):
2419 * dom/WorkerThread.h:
2420 (WebCore::WorkerThread::workerObjectProxy):
2421 * loader/WorkerThreadableLoader.cpp:
2422 (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
2424 2009-02-12 David Levin <levin@chromium.org>
2426 Reviewed by Alexey Proskuryakov.
2428 Bug 23688: ThreadableLoader needs a sync implementation for Workers.
2429 <https://bugs.webkit.org/show_bug.cgi?id=23688>
2431 Add ResourceError to ThreadableLoaderClient.
2433 No observable change in behavior, so no test.
2435 * loader/DocumentThreadableLoader.cpp:
2436 (WebCore::DocumentThreadableLoader::create):
2437 (WebCore::DocumentThreadableLoader::willSendRequest):
2438 (WebCore::DocumentThreadableLoader::didFail):
2439 * loader/ThreadableLoaderClient.h:
2440 (WebCore::ThreadableLoaderClient::didFail):
2441 (WebCore::ThreadableLoaderClient::didFailWillSendRequestCheck):
2442 * loader/ThreadableLoaderClientWrapper.h:
2443 (WebCore::ThreadableLoaderClientWrapper::didFail):
2444 * loader/WorkerThreadableLoader.cpp:
2445 (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
2446 (WebCore::workerContextDidFail):
2447 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
2448 * loader/WorkerThreadableLoader.h:
2449 * xml/XMLHttpRequest.cpp:
2450 (WebCore::XMLHttpRequest::didFail):
2451 (WebCore::XMLHttpRequest::didFailWillSendRequestCheck):
2452 * xml/XMLHttpRequest.h:
2454 2009-02-11 Simon Fraser <simon.fraser@apple.com>
2456 Reviewed by Dave Hyatt
2458 Fix the build on Leopard with ACCELERATED_COMPOSITING turned on.
2460 * WebCore.xcodeproj/project.pbxproj:
2461 FloatPoint3D needs to be a private header, since it's included by GraphicsLayer.h
2462 * platform/graphics/mac/GraphicsLayerCA.mm:
2463 (WebCore::getTransformFunctionValue):
2464 (WebCore::caValueFunctionSupported):
2465 (WebCore::GraphicsLayerCA::setAnchorPoint):
2466 (WebCore::GraphicsLayerCA::setPreserves3D):
2467 (WebCore::GraphicsLayerCA::setContentsToImage):
2468 (WebCore::GraphicsLayerCA::setBasicAnimation):
2469 (WebCore::GraphicsLayerCA::setKeyframeAnimation):
2470 * rendering/RenderLayer.h:
2471 (WebCore::RenderLayer::isRootLayer):
2472 Fix isRootLayer to return true for the renderView's layer, not the root
2475 2009-02-11 Adele Peterson <adele@apple.com>
2477 Reviewed by Oliver Hunt.
2479 Fix for https://bugs.webkit.org/show_bug.cgi?id=23910
2480 <rdar://problem/6160546> REGRESSION: In Full page mode, movie controller hides when I drag the knob if movie is playing
2482 * rendering/RenderMedia.cpp: (WebCore::RenderMedia::forwardEvent):
2483 When we get a mouseOut event, consider the mouse as still within the RenderMedia if the relatedTarget is a descendant.
2485 2009-02-11 David Hyatt <hyatt@apple.com>
2487 Remove all of the inline box wrapper functions from RenderObject, since they only apply to RenderBox. Devirtualize the functions.
2488 Patch all of the call sites to convert to a RenderBox.
2490 Reviewed by Simon Fraser
2493 (WebCore::nextRenderedEditable):
2494 (WebCore::previousRenderedEditable):
2495 (WebCore::Position::getInlineBoxAndOffset):
2496 * rendering/InlineBox.cpp:
2497 (WebCore::InlineBox::deleteLine):
2498 (WebCore::InlineBox::extractLine):
2499 (WebCore::InlineBox::attachLine):
2500 * rendering/RenderLineBoxList.cpp:
2501 (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
2502 * rendering/RenderObject.cpp:
2503 * rendering/RenderObject.h:
2504 * rendering/RenderObjectChildList.cpp:
2505 (WebCore::RenderObjectChildList::removeChildNode):
2506 * rendering/RenderTextControl.cpp:
2507 (WebCore::RenderTextControl::textWithHardLineBreaks):
2509 2009-02-11 David Hyatt <hyatt@apple.com>
2511 Eliminate createInlineBox and dirtyLineBoxes from RenderObject. These functions have been devirtualized.
2512 The single call site now calls a helper function that just bit checks and casts before calling the correct
2513 type. RenderBlock's dirtyLineBoxes function was dead code (caused by the RenderFlow deletion), so it has
2516 Reviewed by Eric Seidel
2518 * rendering/RenderBR.cpp:
2519 * rendering/RenderBR.h:
2520 * rendering/RenderBlock.cpp:
2521 (WebCore::RenderBlock::createRootInlineBox):
2522 * rendering/RenderBlock.h:
2523 * rendering/RenderBox.cpp:
2524 (WebCore::RenderBox::createInlineBox):
2525 * rendering/RenderBox.h:
2526 * rendering/RenderCounter.cpp:
2527 * rendering/RenderCounter.h:
2528 * rendering/RenderInline.cpp:
2529 (WebCore::RenderInline::createInlineFlowBox):
2530 * rendering/RenderInline.h:
2531 * rendering/RenderObject.cpp:
2532 * rendering/RenderObject.h:
2533 * rendering/RenderSVGInlineText.cpp:
2534 (WebCore::RenderSVGInlineText::createTextBox):
2535 * rendering/RenderSVGInlineText.h:
2536 (WebCore::RenderSVGInlineText::isSVGText):
2537 * rendering/RenderText.cpp:
2538 (WebCore::RenderText::createTextBox):
2539 (WebCore::RenderText::createInlineTextBox):
2540 * rendering/RenderText.h:
2541 * rendering/bidi.cpp:
2542 (WebCore::createInlineBoxForRenderer):
2543 (WebCore::RenderBlock::createLineBoxes):
2544 (WebCore::RenderBlock::constructLine):
2545 (WebCore::RenderBlock::layoutInlineChildren):
2547 2009-02-11 Chris Marrin <cmarrin@apple.com>
2549 Reviewed by Dave Hyatt.
2551 https://bugs.webkit.org/show_bug.cgi?id=23905
2553 Adds support for 3D CSS properties (transform-style-3d, perspective,
2554 perspective-origin, and backface-visibility) to RenderStyle and friends
2556 * platform/graphics/transforms/TransformOperation.h
2557 * rendering/style/RenderStyle.cpp:
2558 (WebCore::RenderStyle::diff):
2559 (WebCore::RenderStyle::applyTransform):
2560 * rendering/style/RenderStyle.h:
2561 (WebCore::InheritedFlags::transformOriginZ):
2562 (WebCore::InheritedFlags::hasTransformRelatedProperty):
2563 (WebCore::InheritedFlags::transformStyle3D):
2564 (WebCore::InheritedFlags::backfaceVisibility):
2565 (WebCore::InheritedFlags::perspective):
2566 (WebCore::InheritedFlags::perspectiveOriginX):
2567 (WebCore::InheritedFlags::perspectiveOriginY):
2568 (WebCore::InheritedFlags::setTransformOriginZ):
2569 (WebCore::InheritedFlags::setTransformStyle3D):
2570 (WebCore::InheritedFlags::setBackfaceVisibility):
2571 (WebCore::InheritedFlags::setPerspective):
2572 (WebCore::InheritedFlags::setPerspectiveOriginX):
2573 (WebCore::InheritedFlags::setPerspectiveOriginY):
2574 (WebCore::InheritedFlags::initialTransformOriginZ):
2575 (WebCore::InheritedFlags::initialTransformStyle3D):
2576 (WebCore::InheritedFlags::initialBackfaceVisibility):
2577 (WebCore::InheritedFlags::initialPerspective):
2578 (WebCore::InheritedFlags::initialPerspectiveOriginX):
2579 (WebCore::InheritedFlags::initialPerspectiveOriginY):
2580 * rendering/style/RenderStyleConstants.h:
2582 * rendering/style/StyleRareNonInheritedData.cpp:
2583 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2584 (WebCore::StyleRareNonInheritedData::operator==):
2585 * rendering/style/StyleRareNonInheritedData.h:
2586 * rendering/style/StyleTransformData.cpp:
2587 (WebCore::StyleTransformData::StyleTransformData):
2588 (WebCore::StyleTransformData::operator==):
2589 * rendering/style/StyleTransformData.h:
2591 2009-02-11 Simon Fraser <simon.fraser@apple.com>
2595 Fix ACCELERATED_COMPOSITING build.
2597 * rendering/RenderLayerBacking.cpp:
2598 (WebCore::RenderLayerBacking::createGraphicsLayer):
2599 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2600 * rendering/RenderLayerCompositor.cpp:
2601 (WebCore::RenderLayerCompositor::updateLayerCompositingState):
2603 2009-02-11 Simon Fraser <simon.fraser@apple.com>
2605 Reviewed by Dave Hyatt
2607 https://bugs.webkit.org/show_bug.cgi?id=23862
2609 Add a bit on RenderStyle that gets set when running accelerated
2610 transitions of transform or opacity. These ensure that styles
2611 compare as different during the transition, so that interruption
2612 can be detected reliably.
2614 * page/animation/ImplicitAnimation.cpp:
2615 (WebCore::ImplicitAnimation::animate):
2616 * rendering/style/RenderStyle.h:
2617 (WebCore::InheritedFlags::isRunningAcceleratedAnimation):
2618 (WebCore::InheritedFlags::setIsRunningAcceleratedAnimation):
2619 * rendering/style/StyleRareNonInheritedData.cpp:
2620 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2621 (WebCore::StyleRareNonInheritedData::operator==):
2622 * rendering/style/StyleRareNonInheritedData.h:
2624 2009-02-11 David Hyatt <hyatt@apple.com>
2626 Eliminate the virtual position() function from RenderObject. Rename the position() overrides
2627 in RenderText and RenderBox to positionLineBox and devirtualize them.
2629 Patch the one call site to just check for isText() and isBox() and call the methods directly.
2631 Remove some unnecessary overrides of position() on table sections and rows.
2633 Reviewed by Simon Fraser
2635 * rendering/RenderBox.cpp:
2636 (WebCore::RenderBox::positionLineBox):
2637 * rendering/RenderBox.h:
2638 * rendering/RenderObject.h:
2639 * rendering/RenderSVGRoot.cpp:
2640 * rendering/RenderSVGRoot.h:
2641 * rendering/RenderTableRow.h:
2642 (WebCore::RenderTableRow::lineHeight):
2643 * rendering/RenderTableSection.h:
2644 (WebCore::RenderTableSection::lineHeight):
2645 * rendering/RenderText.cpp:
2646 (WebCore::RenderText::positionLineBox):
2647 * rendering/RenderText.h:
2648 * rendering/bidi.cpp:
2649 (WebCore::RenderBlock::computeVerticalPositionsForLine):
2651 2009-02-11 Dimitri Glazkov <dglazkov@chromium.org>
2653 Reviewed by Eric Seidel.
2655 https://bugs.webkit.org/show_bug.cgi?id=23901
2656 Add HTML options/collections V8 custom bindings.
2658 * bindings/v8/custom/V8HTMLCollectionCustom.cpp: Added.
2659 (WebCore::getNamedItems):
2661 (WebCore::NAMED_PROPERTY_GETTER):
2662 (WebCore::CALLBACK_FUNC_DECL):
2663 * bindings/v8/custom/V8HTMLFormElementCustom.cpp: Added.
2664 (WebCore::NAMED_PROPERTY_GETTER):
2665 * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
2666 (WebCore::ACCESSOR_GETTER):
2667 (WebCore::ACCESSOR_SETTER):
2668 (WebCore::CALLBACK_FUNC_DECL):
2669 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
2670 (WebCore::CALLBACK_FUNC_DECL):
2671 (WebCore::ACCESSOR_SETTER):
2672 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: Added.
2673 (WebCore::CALLBACK_FUNC_DECL):
2674 (WebCore::removeElement):
2675 * bindings/v8/custom/V8HTMLSelectElementCustom.h: Added.
2676 * bindings/v8/custom/V8NamedNodesCollection.cpp: Added.
2677 (WebCore::V8NamedNodesCollection::item):
2678 (WebCore::V8NamedNodesCollection::itemWithName):
2679 * bindings/v8/custom/V8NamedNodesCollection.h: Added.
2680 (WebCore::V8NamedNodesCollection::V8NamedNodesCollection):
2681 (WebCore::V8NamedNodesCollection::length):
2683 2009-02-11 Dimitri Dupuis-latour <dupuislatour@apple.com>
2685 Added a preference to disable some Inspector's panels (rdar://6419624, rdar://6419645).
2686 This is controlled via the 'WebKitInspectorHiddenPanels' key; if nothing is specified, all panels are shown.
2688 Reviewed by Timothy Hatcher.
2690 * inspector/InspectorClient.h:
2691 * inspector/InspectorController.cpp:
2692 (WebCore::hiddenPanels):
2693 (WebCore::InspectorController::hiddenPanels):
2694 (WebCore::InspectorController::windowScriptObjectAvailable):
2695 * inspector/InspectorController.h:
2696 * inspector/front-end/inspector.js:
2697 (WebInspector.loaded):
2698 * loader/EmptyClients.h:
2699 (WebCore::EmptyInspectorClient::hiddenPanels):
2701 2009-02-11 David Hyatt <hyatt@apple.com>
2703 Combine RenderObject::element() and RenderObject::node() into a single function.
2704 node() now has the "anonymous bit" checking behavior of element() and will
2705 return 0 for anonymous content. This patch switches all callers of element()
2706 to node() and patches old callers of node() to deal with situations where they
2707 did not expect node() to be 0. A bunch of node() calls were calling stuff on
2708 Document that they clearly didn't intend, so overall this is a nice improvement.
2710 Reviewed by Sam Weinig
2712 * dom/ContainerNode.cpp:
2713 (WebCore::ContainerNode::getUpperLeftCorner):
2715 (WebCore::Element::offsetParent):
2717 (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
2718 * editing/ModifySelectionListLevel.cpp:
2719 (WebCore::getStartEndListChildren):
2720 (WebCore::IncreaseSelectionListLevelCommand::doApply):
2721 (WebCore::DecreaseSelectionListLevelCommand::doApply):
2722 * editing/TextIterator.cpp:
2723 (WebCore::TextIterator::advance):
2724 * editing/VisiblePosition.cpp:
2725 (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
2726 (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
2727 * editing/visible_units.cpp:
2728 (WebCore::startPositionForLine):
2729 (WebCore::endPositionForLine):
2730 * page/AXObjectCache.cpp:
2731 (WebCore::AXObjectCache::get):
2732 * page/AccessibilityList.cpp:
2733 (WebCore::AccessibilityList::isUnorderedList):
2734 (WebCore::AccessibilityList::isOrderedList):
2735 (WebCore::AccessibilityList::isDefinitionList):
2736 * page/AccessibilityListBox.cpp:
2737 (WebCore::AccessibilityListBox::doAccessibilityHitTest):
2738 * page/AccessibilityRenderObject.cpp:
2739 (WebCore::AccessibilityRenderObject::isPasswordField):
2740 (WebCore::AccessibilityRenderObject::isFileUploadButton):
2741 (WebCore::AccessibilityRenderObject::isInputImage):
2742 (WebCore::AccessibilityRenderObject::isMultiSelect):
2743 (WebCore::AccessibilityRenderObject::isControl):
2744 (WebCore::AccessibilityRenderObject::getAttribute):
2745 (WebCore::AccessibilityRenderObject::anchorElement):
2746 (WebCore::AccessibilityRenderObject::actionElement):
2747 (WebCore::AccessibilityRenderObject::mouseButtonListener):
2748 (WebCore::AccessibilityRenderObject::helpText):
2749 (WebCore::AccessibilityRenderObject::textUnderElement):
2750 (WebCore::AccessibilityRenderObject::hasIntValue):
2751 (WebCore::AccessibilityRenderObject::intValue):
2752 (WebCore::AccessibilityRenderObject::labelElementContainer):
2753 (WebCore::AccessibilityRenderObject::title):
2754 (WebCore::AccessibilityRenderObject::accessibilityDescription):
2755 (WebCore::AccessibilityRenderObject::boundingBoxRect):
2756 (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
2757 (WebCore::AccessibilityRenderObject::titleUIElement):
2758 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
2759 (WebCore::AccessibilityRenderObject::text):
2760 (WebCore::AccessibilityRenderObject::ariaSelectedTextDOMRange):
2761 (WebCore::AccessibilityRenderObject::accessKey):
2762 (WebCore::AccessibilityRenderObject::setSelectedTextRange):
2763 (WebCore::AccessibilityRenderObject::url):
2764 (WebCore::AccessibilityRenderObject::isFocused):
2765 (WebCore::AccessibilityRenderObject::setFocused):
2766 (WebCore::AccessibilityRenderObject::setValue):
2767 (WebCore::AccessibilityRenderObject::isEnabled):
2768 (WebCore::AccessibilityRenderObject::visiblePositionRange):
2769 (WebCore::AccessibilityRenderObject::index):
2770 (WebCore::AccessibilityRenderObject::activeDescendant):
2771 (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
2772 (WebCore::AccessibilityRenderObject::observableObject):
2773 (WebCore::AccessibilityRenderObject::roleValue):
2774 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
2775 (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
2776 * page/AccessibilityTable.cpp:
2777 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
2778 (WebCore::AccessibilityTable::title):
2779 * page/AccessibilityTableCell.cpp:
2780 (WebCore::AccessibilityTableCell::titleUIElement):
2781 * page/AccessibilityTableColumn.cpp:
2782 (WebCore::AccessibilityTableColumn::headerObjectForSection):
2783 * page/AccessibilityTableRow.cpp:
2784 (WebCore::AccessibilityTableRow::headerObject):
2785 * page/EventHandler.cpp:
2786 (WebCore::EventHandler::dispatchMouseEvent):
2787 (WebCore::EventHandler::canMouseDownStartSelect):
2788 (WebCore::EventHandler::canMouseDragExtendSelect):
2789 (WebCore::EventHandler::shouldDragAutoNode):
2791 (WebCore::Frame::searchForLabelsAboveCell):
2792 (WebCore::Frame::setFocusedNodeIfNeeded):
2793 * page/FrameView.cpp:
2794 (WebCore::FrameView::updateOverflowStatus):
2795 * page/animation/AnimationBase.cpp:
2796 (WebCore::AnimationBase::updateStateMachine):
2797 * page/animation/AnimationController.cpp:
2798 (WebCore::AnimationControllerPrivate::updateAnimationTimer):
2799 (WebCore::AnimationController::cancelAnimations):
2800 (WebCore::AnimationController::updateAnimations):
2801 * page/animation/KeyframeAnimation.cpp:
2802 (WebCore::KeyframeAnimation::KeyframeAnimation):
2803 (WebCore::KeyframeAnimation::endAnimation):
2804 * page/mac/AccessibilityObjectWrapper.mm:
2806 (AXAttributeStringSetHeadingLevel):
2807 * page/mac/FrameMac.mm:
2808 (WebCore::Frame::searchForNSLabelsAboveCell):
2809 * rendering/InlineFlowBox.cpp:
2810 (WebCore::InlineFlowBox::verticallyAlignBoxes):
2811 (WebCore::InlineFlowBox::paint):
2812 (WebCore::shouldDrawTextDecoration):
2813 * rendering/InlineTextBox.cpp:
2814 (WebCore::InlineTextBox::paintDocumentMarkers):
2815 * rendering/RenderBR.cpp:
2816 (WebCore::RenderBR::positionForCoordinates):
2817 * rendering/RenderBlock.cpp:
2818 (WebCore::RenderBlock::layoutBlock):
2819 (WebCore::RenderBlock::handleRunInChild):
2820 (WebCore::RenderBlock::paintObject):
2821 (WebCore::RenderBlock::isSelectionRoot):
2822 (WebCore::RenderBlock::rightmostPosition):
2823 (WebCore::RenderBlock::positionForBox):
2824 (WebCore::RenderBlock::positionForRenderer):
2825 (WebCore::RenderBlock::positionForCoordinates):
2826 (WebCore::RenderBlock::hasLineIfEmpty):
2827 (WebCore::RenderBlock::updateFirstLetter):
2828 (WebCore::RenderBlock::updateHitTestResult):
2829 (WebCore::RenderBlock::addFocusRingRects):
2830 * rendering/RenderBox.cpp:
2831 (WebCore::RenderBox::styleWillChange):
2832 (WebCore::RenderBox::updateBoxModelInfoFromStyle):
2833 (WebCore::RenderBox::paintRootBoxDecorations):
2834 (WebCore::RenderBox::positionForCoordinates):
2835 * rendering/RenderButton.cpp:
2836 (WebCore::RenderButton::updateFromElement):
2837 (WebCore::RenderButton::canHaveChildren):
2838 * rendering/RenderCounter.cpp:
2839 (WebCore::planCounter):
2840 * rendering/RenderFieldset.cpp:
2841 (WebCore::RenderFieldset::findLegend):
2842 * rendering/RenderFlexibleBox.cpp:
2843 (WebCore::RenderFlexibleBox::layoutVerticalBox):
2844 * rendering/RenderForeignObject.cpp:
2845 (WebCore::RenderForeignObject::translationForAttributes):
2846 (WebCore::RenderForeignObject::calculateLocalTransform):
2847 * rendering/RenderFrame.h:
2848 (WebCore::RenderFrame::element):
2849 * rendering/RenderImage.cpp:
2850 (WebCore::RenderImage::paintReplaced):
2851 (WebCore::RenderImage::imageMap):
2852 (WebCore::RenderImage::nodeAtPoint):
2853 (WebCore::RenderImage::updateAltText):
2854 * rendering/RenderInline.cpp:
2855 (WebCore::RenderInline::cloneInline):
2856 (WebCore::RenderInline::updateHitTestResult):
2857 * rendering/RenderLayer.cpp:
2858 (WebCore::RenderLayer::isTransparent):
2859 (WebCore::RenderLayer::scrollToOffset):
2860 (WebCore::RenderLayer::resize):
2861 (WebCore::RenderLayer::createScrollbar):
2862 (WebCore::RenderLayer::updateOverflowStatus):
2863 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
2864 (WebCore::RenderLayer::enclosingElement):
2865 (WebCore::RenderLayer::updateHoverActiveState):
2866 (WebCore::RenderLayer::updateScrollCornerStyle):
2867 (WebCore::RenderLayer::updateResizerStyle):
2868 * rendering/RenderLayer.h:
2869 (WebCore::RenderLayer::isRootLayer):
2870 * rendering/RenderListItem.cpp:
2871 (WebCore::getParentOfFirstLineBox):
2872 * rendering/RenderMarquee.cpp:
2873 (WebCore::RenderMarquee::marqueeSpeed):
2874 * rendering/RenderObject.cpp:
2875 (WebCore::RenderObject::RenderObject):
2876 (WebCore::RenderObject::isBody):
2877 (WebCore::RenderObject::isHR):
2878 (WebCore::RenderObject::isHTMLMarquee):
2879 (WebCore::RenderObject::isEditable):
2880 (WebCore::RenderObject::addPDFURLRect):
2881 (WebCore::RenderObject::showTreeForThis):
2882 (WebCore::RenderObject::draggableNode):
2883 (WebCore::RenderObject::hasOutlineAnnotation):
2884 (WebCore::RenderObject::positionForCoordinates):
2885 (WebCore::RenderObject::updateDragState):
2886 (WebCore::RenderObject::updateHitTestResult):
2887 (WebCore::RenderObject::getUncachedPseudoStyle):
2888 (WebCore::RenderObject::getTextDecorationColors):
2889 (WebCore::RenderObject::caretMaxOffset):
2890 (WebCore::RenderObject::offsetParent):
2891 * rendering/RenderObject.h:
2892 (WebCore::RenderObject::isRoot):
2893 (WebCore::RenderObject::isInlineContinuation):
2894 (WebCore::RenderObject::node):
2895 (WebCore::RenderObject::setNode):
2896 * rendering/RenderObjectChildList.cpp:
2897 (WebCore::RenderObjectChildList::destroyLeftoverChildren):
2898 * rendering/RenderPart.cpp:
2899 (WebCore::RenderPart::updateWidgetPosition):
2900 * rendering/RenderPartObject.cpp:
2901 (WebCore::RenderPartObject::updateWidget):
2902 (WebCore::RenderPartObject::viewCleared):
2903 * rendering/RenderPath.cpp:
2904 (WebCore::RenderPath::calculateLocalTransform):
2905 (WebCore::RenderPath::layout):
2906 (WebCore::RenderPath::paint):
2907 (WebCore::RenderPath::drawMarkersIfNeeded):
2908 * rendering/RenderReplaced.cpp:
2909 (WebCore::RenderReplaced::positionForCoordinates):
2910 (WebCore::RenderReplaced::isSelected):
2911 * rendering/RenderSVGGradientStop.cpp:
2912 (WebCore::RenderSVGGradientStop::gradientElement):
2913 * rendering/RenderSVGImage.cpp:
2914 (WebCore::RenderSVGImage::calculateLocalTransform):
2915 * rendering/RenderSVGInlineText.cpp:
2916 (WebCore::RenderSVGInlineText::positionForCoordinates):
2917 * rendering/RenderSVGRoot.cpp:
2918 (WebCore::RenderSVGRoot::layout):
2919 (WebCore::RenderSVGRoot::applyContentTransforms):
2920 (WebCore::RenderSVGRoot::paint):
2921 (WebCore::RenderSVGRoot::calcViewport):
2922 (WebCore::RenderSVGRoot::absoluteTransform):
2923 * rendering/RenderSVGText.cpp:
2924 (WebCore::RenderSVGText::calculateLocalTransform):
2925 (WebCore::RenderSVGText::layout):
2926 * rendering/RenderSVGTextPath.cpp:
2927 (WebCore::RenderSVGTextPath::layoutPath):
2928 (WebCore::RenderSVGTextPath::startOffset):
2929 (WebCore::RenderSVGTextPath::exactAlignment):
2930 (WebCore::RenderSVGTextPath::stretchMethod):
2931 * rendering/RenderSVGTransformableContainer.cpp:
2932 (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
2933 * rendering/RenderSVGViewportContainer.cpp:
2934 (WebCore::RenderSVGViewportContainer::calcViewport):
2935 (WebCore::RenderSVGViewportContainer::viewportTransform):
2936 (WebCore::RenderSVGViewportContainer::nodeAtPoint):
2937 * rendering/RenderTable.cpp:
2938 (WebCore::RenderTable::addChild):
2939 * rendering/RenderTableCell.cpp:
2940 (WebCore::RenderTableCell::updateFromElement):
2941 (WebCore::RenderTableCell::calcPrefWidths):
2942 * rendering/RenderTableCol.cpp:
2943 (WebCore::RenderTableCol::updateFromElement):
2944 * rendering/RenderTableRow.cpp:
2945 (WebCore::RenderTableRow::addChild):
2946 * rendering/RenderTableSection.cpp:
2947 (WebCore::RenderTableSection::addChild):
2948 * rendering/RenderText.cpp:
2949 (WebCore::RenderText::originalText):
2950 (WebCore::RenderText::positionForCoordinates):
2951 * rendering/RenderTextControlMultiLine.cpp:
2952 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
2953 * rendering/RenderTextControlSingleLine.cpp:
2954 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
2955 * rendering/RenderTextFragment.cpp:
2956 (WebCore::RenderTextFragment::originalText):
2957 (WebCore::RenderTextFragment::previousCharacter):
2958 * rendering/RenderTheme.cpp:
2959 (WebCore::RenderTheme::isActive):
2960 (WebCore::RenderTheme::isChecked):
2961 (WebCore::RenderTheme::isIndeterminate):
2962 (WebCore::RenderTheme::isEnabled):
2963 (WebCore::RenderTheme::isFocused):
2964 (WebCore::RenderTheme::isPressed):
2965 (WebCore::RenderTheme::isReadOnlyControl):
2966 (WebCore::RenderTheme::isHovered):
2967 * rendering/RenderThemeMac.mm:
2968 (WebCore::RenderThemeMac::updatePressedState):
2969 (WebCore::RenderThemeMac::paintMediaFullscreenButton):
2970 (WebCore::RenderThemeMac::paintMediaMuteButton):
2971 (WebCore::RenderThemeMac::paintMediaPlayButton):
2972 (WebCore::RenderThemeMac::paintMediaSeekBackButton):
2973 (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
2974 (WebCore::RenderThemeMac::paintMediaSliderTrack):
2975 (WebCore::RenderThemeMac::paintMediaSliderThumb):
2976 (WebCore::RenderThemeMac::paintMediaTimelineContainer):
2977 (WebCore::RenderThemeMac::paintMediaCurrentTime):
2978 (WebCore::RenderThemeMac::paintMediaTimeRemaining):
2979 * rendering/RenderThemeSafari.cpp:
2980 (WebCore::RenderThemeSafari::paintMediaMuteButton):
2981 (WebCore::RenderThemeSafari::paintMediaPlayButton):
2982 (WebCore::RenderThemeSafari::paintMediaSliderTrack):
2983 * rendering/RenderTreeAsText.cpp:
2984 (WebCore::operator<<):
2985 (WebCore::writeSelection):
2986 * rendering/RenderWidget.cpp:
2987 (WebCore::RenderWidget::setWidgetGeometry):
2988 (WebCore::RenderWidget::updateWidgetPosition):
2989 (WebCore::RenderWidget::nodeAtPoint):
2990 * rendering/RootInlineBox.cpp:
2991 (WebCore::isEditableLeaf):
2992 * rendering/SVGRenderSupport.cpp:
2993 (WebCore::prepareToRenderSVGContent):
2994 * rendering/SVGRenderTreeAsText.cpp:
2996 * rendering/SVGRootInlineBox.cpp:
2997 (WebCore::SVGRootInlineBox::buildLayoutInformation):
2998 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
2999 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
3000 (WebCore::SVGRootInlineBox::buildTextChunks):
3001 * rendering/style/SVGRenderStyle.cpp:
3002 (WebCore::SVGRenderStyle::cssPrimitiveToLength):
3004 (WebCore::SVGTextRunWalker::walk):
3005 (WebCore::floatWidthOfSubStringUsingSVGFont):
3006 (WebCore::Font::drawTextUsingSVGFont):
3007 * svg/SVGTextContentElement.cpp:
3008 (WebCore::findInlineTextBoxInTextChunks):
3009 * svg/graphics/SVGPaintServer.cpp:
3010 (WebCore::SVGPaintServer::fillPaintServer):
3011 (WebCore::SVGPaintServer::strokePaintServer):
3013 2009-02-11 Brady Eidson <beidson@apple.com>
3015 Reviewed by Darin Adler
3017 <rdar://problem/3541409> - Further FrameLoader and page cache cleanup
3019 * history/CachedFrame.cpp:
3020 (WebCore::CachedFrame::restore): Moved updatePlatformScriptObjects() here.
3022 * loader/FrameLoader.cpp:
3023 (WebCore::FrameLoader::commitProvisionalLoad): Rolled opened() into this method. This method was
3024 the only caller and - in the future - will benefit from doing parts of opened()'s work differently.
3025 (WebCore::FrameLoader::open): Split off per-frame logic into open(CachedFrame&) method.
3026 (WebCore::FrameLoader::closeAndRemoveChild): Added. Do the non-tree related cleanup that
3027 FrameTree::removeChild() used to do.
3028 (WebCore::FrameLoader::detachFromParent): Call ::closeAndRemoveChild() instead.
3029 (WebCore::FrameLoader::cachePageForHistoryItem): Perform the "can cache page" check here.
3030 * loader/FrameLoader.h:
3032 * page/FrameTree.cpp:
3033 (WebCore::FrameTree::removeChild): Just remove the Frame from the tree. Closing it and other
3034 cleanup is the responsibility of the FrameLoader.
3036 (WebCore::FrameTree::detachFromParent): Added to just clear a Frame's parent pointer
3038 2009-02-11 Scott Violet <sky@google.com>
3040 Reviewed by Eric Seidel.
3042 https://bugs.webkit.org/show_bug.cgi?id=23882
3043 GraphicsContextSkia draws round rects as solid rects
3045 Fixes two bugs in Skia's GraphicsContext::fillRoundedRect:
3046 . fillRoundedRect had an extra call to fillRect, resulting in always
3047 drawing a solid rectangle.
3048 . if the total radius along a given axis is greater than the size of
3049 the axis to draw, a solid rect should be drawn.
3051 The layout tests LayoutTests/fast/css/shadow-multiple.html and
3052 LayoutTests/fast/box-shadow/basic-shadows.html cover this.
3054 * platform/graphics/skia/GraphicsContextSkia.cpp:
3055 (WebCore::GraphicsContext::fillRoundedRect):
3057 2009-02-11 Julien Chaffraix <jchaffraix@webkit.org>
3059 Reviewed by Eric Seidel.
3061 Bug 23536: Auto-generate HTMLElementFactory
3063 Remove the HTMLElementFactory files. Farewell.
3065 * html/HTMLElementFactory.cpp: Removed.
3066 * html/HTMLElementFactory.h: Removed.
3068 2009-02-11 Julien Chaffraix <jchaffraix@webkit.org>
3070 Reviewed by Eric Seidel.
3072 Bug 23536: Auto-generate HTMLElementFactory
3074 Make the platform auto-generate the HTMLElementFactory.
3076 * DerivedSources.make:
3080 * WebCore.vcproj/WebCore.vcproj:
3081 * WebCore.xcodeproj/project.pbxproj:
3082 * WebCoreSources.bkl:
3085 2009-02-11 Sam Weinig <sam@webkit.org>
3087 Reviewed by David Hyatt.
3089 Remove unneeded ASSERTS.
3091 * rendering/RenderBox.h:
3092 (WebCore::RenderBox::width):
3093 (WebCore::RenderBox::height):
3094 (WebCore::RenderBox::size):
3095 (WebCore::RenderBox::frameRect):
3097 2009-02-11 Simon Fraser <simon.fraser@apple.com>
3099 Reviewed by Dave Hyatt
3101 Add function to RenderStyle to ask whether a background image has been specified.
3103 * rendering/style/RenderStyle.h:
3104 (WebCore::InheritedFlags::hasBackgroundImage):
3106 2009-02-11 Simon Fraser <simon.fraser@apple.com>
3108 Reviewed by Dave Hyatt
3110 https://bugs.webkit.org/show_bug.cgi?id=23548
3112 When opacity or transform change on an object which has a compositing layer,
3113 avoid repainting the layer.
3115 Added a new StyleDifference value, StyleDifferenceRecompositeLayer, which indicates
3116 that the only thing styleChanged() has to do is to update composited properties of
3117 the layer. RenderStyle::diff() now has an out param for a bitmask of "context sensitive"
3118 properties, currently for opacity and transform. When one of these changes, we need
3119 to see if we have a compositing layer before we decide whether to layout/repaint,
3120 or just update the composited layer, via adjustStyleDifference().
3122 * rendering/RenderObject.cpp:
3123 (WebCore::RenderObject::adjustStyleDifference):
3124 (WebCore::RenderObject::setStyle):
3125 (WebCore::RenderObject::styleDidChange):
3126 * rendering/RenderObject.h:
3127 * rendering/style/RenderStyle.cpp:
3128 (WebCore::RenderStyle::diff):
3129 * rendering/style/RenderStyle.h:
3130 * rendering/style/RenderStyleConstants.h:
3133 2009-02-11 Alexey Proskuryakov <ap@webkit.org>
3135 Reviewed by Darin Adler.
3137 <rdar://problem/6562920> Pasted text should be normalized to NFC
3139 Testing requires putting non-HTML content in pasteboard, so it cannot be done with WebKit alone.
3141 * platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::plainText): Route the text through
3142 -[NSString precomposedStringWithCanonicalMapping].
3144 2009-02-10 Chris Marrin <cmarrin@apple.com>
3146 Reviewed by Simon Fraser.
3148 https://bugs.webkit.org/show_bug.cgi?id=23883
3150 Added new TransformOperation subclasses and methods to existing ones
3153 * WebCore.xcodeproj/project.pbxproj:
3154 * platform/graphics/transforms/IdentityTransformOperation.h:
3155 (WebCore::IdentityTransformOperation::isAffine):
3156 * platform/graphics/transforms/Matrix3DTransformOperation.cpp: Added.
3157 (WebCore::Matrix3DTransformOperation::blend):
3158 * platform/graphics/transforms/Matrix3DTransformOperation.h: Added.
3159 (WebCore::Matrix3DTransformOperation::create):
3160 (WebCore::Matrix3DTransformOperation::isIdentity):
3161 (WebCore::Matrix3DTransformOperation::isAffine):
3162 (WebCore::Matrix3DTransformOperation::getOperationType):
3163 (WebCore::Matrix3DTransformOperation::isSameType):
3164 (WebCore::Matrix3DTransformOperation::operator==):
3165 (WebCore::Matrix3DTransformOperation::apply):
3166 (WebCore::Matrix3DTransformOperation::Matrix3DTransformOperation):
3167 * platform/graphics/transforms/MatrixTransformOperation.h:
3168 (WebCore::MatrixTransformOperation::isAffine):
3169 (WebCore::MatrixTransformOperation::apply):
3170 * platform/graphics/transforms/PerspectiveTransformOperation.cpp: Added.
3171 (WebCore::PerspectiveTransformOperation::blend):
3172 * platform/graphics/transforms/PerspectiveTransformOperation.h: Added.
3173 (WebCore::PerspectiveTransformOperation::create):
3174 (WebCore::PerspectiveTransformOperation::isIdentity):
3175 (WebCore::PerspectiveTransformOperation::isAffine):
3176 (WebCore::PerspectiveTransformOperation::getOperationType):
3177 (WebCore::PerspectiveTransformOperation::isSameType):
3178 (WebCore::PerspectiveTransformOperation::operator==):
3179 (WebCore::PerspectiveTransformOperation::apply):
3180 (WebCore::PerspectiveTransformOperation::PerspectiveTransformOperation):
3181 * platform/graphics/transforms/RotateTransformOperation.cpp:
3182 (WebCore::RotateTransformOperation::blend):
3183 * platform/graphics/transforms/RotateTransformOperation.h:
3184 (WebCore::RotateTransformOperation::create):
3185 (WebCore::RotateTransformOperation::angle):
3186 (WebCore::RotateTransformOperation::isAffine):
3187 (WebCore::RotateTransformOperation::operator==):
3188 (WebCore::RotateTransformOperation::apply):
3189 (WebCore::RotateTransformOperation::RotateTransformOperation):
3190 * platform/graphics/transforms/ScaleTransformOperation.cpp:
3191 (WebCore::ScaleTransformOperation::blend):
3192 * platform/graphics/transforms/ScaleTransformOperation.h:
3193 (WebCore::ScaleTransformOperation::create):
3194 (WebCore::ScaleTransformOperation::z):
3195 (WebCore::ScaleTransformOperation::isIdentity):
3196 (WebCore::ScaleTransformOperation::isAffine):
3197 (WebCore::ScaleTransformOperation::operator==):
3198 (WebCore::ScaleTransformOperation::apply):
3199 (WebCore::ScaleTransformOperation::ScaleTransformOperation):
3200 * platform/graphics/transforms/SkewTransformOperation.h:
3201 (WebCore::SkewTransformOperation::isAffine):
3202 * platform/graphics/transforms/TransformOperation.h:
3203 (WebCore::TransformOperation::):
3204 (WebCore::TransformOperation::is3DOperation):
3205 * platform/graphics/transforms/TransformOperations.h:
3206 (WebCore::TransformOperations::isAffine):
3207 (WebCore::TransformOperations::has3DOperation):
3208 * platform/graphics/transforms/TranslateTransformOperation.cpp:
3209 (WebCore::TranslateTransformOperation::blend):
3210 * platform/graphics/transforms/TranslateTransformOperation.h:
3211 (WebCore::TranslateTransformOperation::create):
3212 (WebCore::TranslateTransformOperation::z):
3213 (WebCore::TranslateTransformOperation::isIdentity):
3214 (WebCore::TranslateTransformOperation::isAffine):
3215 (WebCore::TranslateTransformOperation::operator==):
3216 (WebCore::TranslateTransformOperation::apply):
3217 (WebCore::TranslateTransformOperation::TranslateTransformOperation):
3219 2009-02-11 David Hyatt <hyatt@apple.com>
3221 Move createAnonymousBlock() to RenderBlock. Since anonymous blocks are always parented to some other block,
3222 we can move this function to RenderBlock. Fix a couple of call sites as a result of this restriction.
3224 Reviewed by Simon Fraser
3226 * rendering/RenderBlock.cpp:
3227 (WebCore::RenderBlock::createAnonymousBlock):
3228 * rendering/RenderBlock.h:
3229 * rendering/RenderInline.cpp:
3230 (WebCore::RenderInline::childBecameNonInline):
3231 * rendering/RenderObject.cpp:
3232 (WebCore::RenderObject::handleDynamicFloatPositionChange):
3233 * rendering/RenderObject.h:
3235 2009-02-11 David Hyatt <hyatt@apple.com>
3237 https://bugs.webkit.org/show_bug.cgi?id=23895
3239 Remove two complete nonsense lines that I accidentally added from a cut and paste error. This
3240 restores the original logic.
3242 Reviewed by Simon Fraser
3244 * rendering/RenderBox.cpp:
3245 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
3247 2009-02-11 David Hyatt <hyatt@apple.com>
3249 Rename getBaselineOfFirstLineBox to firstLineBoxBaseline. Rename getBaselineOfLastLineBox to
3250 lastLineBoxBaseline. Remove the functions from RenderObject and add them to RenderBox instead.
3252 Reviewed by Eric Seidel
3254 * rendering/RenderBlock.cpp:
3255 (WebCore::RenderBlock::baselinePosition):
3256 (WebCore::RenderBlock::firstLineBoxBaseline):
3257 (WebCore::RenderBlock::lastLineBoxBaseline):
3258 * rendering/RenderBlock.h:
3259 * rendering/RenderBox.h:
3260 (WebCore::RenderBox::firstLineBoxBaseline):
3261 (WebCore::RenderBox::lastLineBoxBaseline):
3262 * rendering/RenderFlexibleBox.cpp:
3263 (WebCore::RenderFlexibleBox::layoutHorizontalBox):
3264 * rendering/RenderObject.h:
3265 * rendering/RenderTable.cpp:
3266 (WebCore::RenderTable::firstLineBoxBaseline):
3267 * rendering/RenderTable.h:
3268 * rendering/RenderTableCell.cpp:
3269 (WebCore::RenderTableCell::baselinePosition):
3270 * rendering/RenderTableSection.cpp:
3271 (WebCore::RenderTableSection::firstLineBoxBaseline):
3272 * rendering/RenderTableSection.h:
3274 2009-02-11 Eric Carlson <eric.carlson@apple.com>
3276 Reviewed by Simon Fraser
3278 https://bugs.webkit.org/show_bug.cgi?id=23877
3279 Allow port to disable progress events from <video> and <audio> elements
3281 * html/HTMLMediaElement.cpp: Initialize m_sendProgressEvents.
3282 (WebCore::HTMLMediaElement::HTMLMediaElement): Don't post progress events if m_sendProgressEvents is false.
3283 (WebCore::HTMLMediaElement::initAndDispatchProgressEvent): Ditto.
3284 (WebCore::HTMLMediaElement::load): Ditto.
3285 * html/HTMLMediaElement.h: Add m_sendProgressEvents
3287 2009-02-11 Adam Roben <aroben@apple.com>
3291 * DerivedSources.cpp: Removed SVGElementFactory.cpp, since including
3292 it leads to ambiguities for symbols like "aTag", which exist in both
3293 the HTMLNames and SVGNames namespaces.
3295 * WebCore.vcproj/WebCore.vcproj: Added SVGElementFactory.cpp to the
3296 project directly. VS also decided to reformat this file a little bit.
3298 2009-02-10 Julien Chaffraix <jchaffraix@webkit.org>
3300 Reviewed by Eric Seidel.
3302 Bug 23536: Auto-generate HTMLElementFactory
3304 Those are the last auto-generation bits needed to have a working generated HTMLElementFactory:
3306 - Added a new option mapToTagName that enables a tag to use another's options and tagName (<image>
3307 uses imgTag for example) and wired the code generation to be consistent with the current factory.
3309 - Disabled dashboard compatibility check for HTMLElementFactory as it would make at least one test case fail.
3311 - Pass the QualifiedName down to the Element constructor for shared constructors to make the generated code as
3312 close as possible to the current one. We will pass the QualifiedName for all Element in a forthcoming patch.
3314 * dom/make_names.pl: Did all the above points and tweaked the code generation to match the current HTMLElementFactory
3315 as closely as possible.
3317 * html/HTMLElementFactory.cpp:
3318 (WebCore::quoteConstructor):
3319 * html/HTMLQuoteElement.cpp:
3320 (WebCore::HTMLQuoteElement::HTMLQuoteElement): Moved setUsesBeforeAfterRules to HTMLQuoteElement' constructor because some
3321 part of the code creates elements without using the HTMLElementFactory. Also added a FIXME as it is not the right place.
3323 * html/HTMLTagNames.in: Corrected <image> parameters.
3325 2009-02-10 David Hyatt <hyatt@apple.com>
3327 Fix for pixel test regression in fast/text. Make sure not to add in
3328 the borderTop and paddingTop of the block to the baseline when painting
3329 strict mode text decorations.
3331 Reviewed by Mark Rowe
3333 * rendering/InlineFlowBox.cpp:
3334 (WebCore::InlineFlowBox::paintTextDecorations):
3335 * rendering/InlineFlowBox.h:
3337 2009-02-10 Jon Honeycutt <jhoneycutt@apple.com>
3339 Windows build fix after r40837.
3343 * DerivedSources.cpp:
3345 2009-02-10 Jon Honeycutt <jhoneycutt@apple.com>
3347 <rdar://6349412> REGRESSION(r37204): Page is not repainted during and
3350 Reviewed by Steve Falkenburg.
3352 * platform/ScrollView.cpp:
3353 (WebCore::ScrollView::scrollContents): Don't repaint the pan scroll
3354 icon rect immediately; we will paint after the view has been scrolled.
3356 2009-02-10 Oliver Hunt <oliver@apple.com>
3358 Reviewed by Adele Peterson.
3360 <rdar://problem/6156755> onMouseOver events do not fire properly for cross frame drag and drop
3362 This problem was caused by incorrectly ignoring whether or not the
3363 default behaviour of the mousedown event was suppressed. If a
3364 mousedown handler in a frame prevents default handling then the
3365 subsequent mousemove events fired for the drag should not be
3366 captured by that frame, should the mouse move out of its bounds.
3368 Test: fast/events/mouse-drag-from-frame.html
3370 * page/EventHandler.cpp:
3371 (WebCore::EventHandler::EventHandler):
3372 (WebCore::EventHandler::clear):
3373 (WebCore::EventHandler::handleMouseReleaseEvent):
3374 Reset new m_capturesDragging flag
3376 (WebCore::EventHandler::handleMousePressEvent):
3377 Respect the m_capturesDragging flag when we propagate
3378 a mousedown event to a subframe.
3380 * page/EventHandler.h:
3381 (WebCore::EventHandler::capturesDragging):
3383 2009-02-10 Kevin Ollivier <kevino@theolliviers.com>
3385 wx build fixes for recent changes to TransformationMatrix and DOMElement.
3387 * WebCoreSources.bkl:
3389 * platform/graphics/transforms/TransformationMatrix.h:
3390 * platform/graphics/wx/TransformationMatrixWx.cpp:
3391 (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
3393 2009-02-10 David Hyatt <hyatt@apple.com>
3395 Some renames on line boxes. xPos()/yPos() -> x()/y(). setXPos()/setYPos() -> setX()/setY(). m_object/object() -> m_renderer/renderer(). textObject() -> textRenderer().
3397 Reviewed by Sam Weinig
3400 (WebCore::Position::upstream):
3401 (WebCore::Position::downstream):
3402 * editing/VisiblePosition.cpp:
3403 (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
3404 (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
3405 (WebCore::VisiblePosition::localCaretRect):
3406 * editing/visible_units.cpp:
3407 (WebCore::startPositionForLine):
3408 (WebCore::endPositionForLine):
3409 (WebCore::previousLinePosition):
3410 (WebCore::nextLinePosition):
3411 * rendering/EllipsisBox.cpp:
3412 (WebCore::EllipsisBox::paint):
3413 (WebCore::EllipsisBox::nodeAtPoint):
3414 * rendering/InlineBox.cpp:
3415 (WebCore::InlineBox::showTreeForThis):
3416 (WebCore::InlineBox::height):
3417 (WebCore::InlineBox::caretMinOffset):
3418 (WebCore::InlineBox::caretMaxOffset):
3419 (WebCore::InlineBox::deleteLine):
3420 (WebCore::InlineBox::extractLine):
3421 (WebCore::InlineBox::attachLine):
3422 (WebCore::InlineBox::adjustPosition):
3423 (WebCore::InlineBox::paint):
3424 (WebCore::InlineBox::nodeAtPoint):
3425 (WebCore::InlineBox::selectionState):
3426 (WebCore::InlineBox::canAccommodateEllipsis):
3427 * rendering/InlineBox.h:
3428 (WebCore::InlineBox::InlineBox):
3429 (WebCore::InlineBox::renderer):
3430 (WebCore::InlineBox::setX):
3431 (WebCore::InlineBox::x):
3432 (WebCore::InlineBox::setY):
3433 (WebCore::InlineBox::y):
3434 (WebCore::InlineBox::topOverflow):
3435 (WebCore::InlineBox::bottomOverflow):
3436 (WebCore::InlineBox::leftOverflow):
3437 (WebCore::InlineBox::rightOverflow):
3438 (WebCore::InlineBox::visibleToHitTesting):
3439 (WebCore::InlineBox::boxModelObject):
3440 * rendering/InlineFlowBox.cpp:
3441 (WebCore::InlineFlowBox::height):
3442 (WebCore::InlineFlowBox::addToLine):
3443 (WebCore::InlineFlowBox::removeLineBoxFromRenderObject):
3444 (WebCore::InlineFlowBox::extractLineBoxFromRenderObject):
3445 (WebCore::InlineFlowBox::attachLineBoxToRenderObject):
3446 (WebCore::InlineFlowBox::rendererLineBoxes):
3447 (WebCore::InlineFlowBox::onEndChain):
3448 (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
3449 (WebCore::InlineFlowBox::placeBoxesHorizontally):
3450 (WebCore::InlineFlowBox::verticallyAlignBoxes):
3451 (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
3452 (WebCore::verticalPositionForBox):
3453 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3454 (WebCore::InlineFlowBox::placeBoxesVertically):
3455 (WebCore::InlineFlowBox::nodeAtPoint):
3456 (WebCore::InlineFlowBox::paint):
3457 (WebCore::InlineFlowBox::paintFillLayer):
3458 (WebCore::InlineFlowBox::paintBoxShadow):
3459 (WebCore::InlineFlowBox::paintBoxDecorations):
3460 (WebCore::InlineFlowBox::paintMask):
3461 (WebCore::InlineFlowBox::paintTextDecorations):
3462 * rendering/InlineFlowBox.h:
3463 (WebCore::InlineFlowBox::borderLeft):
3464 (WebCore::InlineFlowBox::borderRight):
3465 (WebCore::InlineFlowBox::borderTop):
3466 (WebCore::InlineFlowBox::borderBottom):
3467 (WebCore::InlineFlowBox::baseline):
3468 * rendering/InlineTextBox.cpp:
3469 (WebCore::InlineTextBox::height):
3470 (WebCore::InlineTextBox::selectionState):
3471 (WebCore::InlineTextBox::selectionRect):
3472 (WebCore::InlineTextBox::deleteLine):
3473 (WebCore::InlineTextBox::extractLine):
3474 (WebCore::InlineTextBox::attachLine):
3475 (WebCore::InlineTextBox::placeEllipsisBox):
3476 (WebCore::InlineTextBox::isLineBreak):
3477 (WebCore::InlineTextBox::nodeAtPoint):
3478 (WebCore::InlineTextBox::paint):
3479 (WebCore::InlineTextBox::selectionStartEnd):
3480 (WebCore::InlineTextBox::paintSelection):
3481 (WebCore::InlineTextBox::paintCompositionBackground):
3482 (WebCore::InlineTextBox::paintCustomHighlight):
3483 (WebCore::InlineTextBox::paintDecoration):
3484 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
3485 (WebCore::InlineTextBox::paintTextMatchMarker):
3486 (WebCore::InlineTextBox::paintDocumentMarkers):
3487 (WebCore::InlineTextBox::paintCompositionUnderline):
3488 (WebCore::InlineTextBox::textPos):
3489 (WebCore::InlineTextBox::offsetForPosition):
3490 (WebCore::InlineTextBox::positionForOffset):
3491 * rendering/InlineTextBox.h:
3492 (WebCore::InlineTextBox::textRenderer):
3493 * rendering/ListMarkerBox.cpp:
3494 (WebCore::ListMarkerBox::isText):
3495 * rendering/RenderBlock.cpp:
3496 (WebCore::RenderBlock::paintEllipsisBoxes):
3497 (WebCore::RenderBlock::lowestPosition):
3498 (WebCore::RenderBlock::rightmostPosition):
3499 (WebCore::RenderBlock::leftmostPosition):
3500 (WebCore::RenderBlock::positionForBox):
3501 (WebCore::RenderBlock::positionForCoordinates):
3502 (WebCore::RenderBlock::getBaselineOfFirstLineBox):
3503 (WebCore::RenderBlock::getBaselineOfLastLineBox):
3504 (WebCore::RenderBlock::adjustForBorderFit):
3505 (WebCore::RenderBlock::addFocusRingRects):
3506 * rendering/RenderBox.cpp:
3507 (WebCore::RenderBox::paintCustomHighlight):
3508 (WebCore::RenderBox::position):
3509 (WebCore::RenderBox::containingBlockWidthForPositioned):
3510 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
3511 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
3512 * rendering/RenderBoxModelObject.cpp:
3513 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
3514 * rendering/RenderFlexibleBox.cpp:
3515 (WebCore::RenderFlexibleBox::layoutVerticalBox):
3516 * rendering/RenderInline.cpp:
3517 (WebCore::RenderInline::absoluteRects):
3518 (WebCore::RenderInline::absoluteQuads):
3519 (WebCore::RenderInline::offsetLeft):
3520 (WebCore::RenderInline::offsetTop):
3521 (WebCore::RenderInline::linesBoundingBox):
3522 (WebCore::RenderInline::relativePositionedInlineOffset):
3523 (WebCore::RenderInline::addFocusRingRects):
3524 (WebCore::RenderInline::paintOutline):
3525 * rendering/RenderLayer.cpp:
3526 (WebCore::RenderLayer::localBoundingBox):
3527 * rendering/RenderSVGTSpan.cpp:
3528 (WebCore::RenderSVGTSpan::absoluteRects):
3529 (WebCore::RenderSVGTSpan::absoluteQuads):
3530 * rendering/RenderSVGText.cpp:
3531 (WebCore::RenderSVGText::absoluteRects):
3532 (WebCore::RenderSVGText::absoluteQuads):
3533 (WebCore::RenderSVGText::relativeBBox):
3534 * rendering/RenderSVGTextPath.cpp:
3535 (WebCore::RenderSVGTextPath::absoluteRects):
3536 (WebCore::RenderSVGTextPath::absoluteQuads):
3537 * rendering/RenderText.cpp:
3538 (WebCore::RenderText::absoluteRects):
3539 (WebCore::RenderText::absoluteRectsForRange):
3540 (WebCore::RenderText::absoluteQuads):
3541 (WebCore::RenderText::absoluteQuadsForRange):
3542 (WebCore::RenderText::localCaretRect):
3543 (WebCore::RenderText::linesBoundingBox):
3544 * rendering/RootInlineBox.cpp:
3545 (WebCore::RootInlineBox::height):
3546 (WebCore::RootInlineBox::clearTruncation):
3547 (WebCore::RootInlineBox::placeEllipsis):
3548 (WebCore::RootInlineBox::paintEllipsisBox):
3549 (WebCore::RootInlineBox::addHighlightOverflow):
3550 (WebCore::RootInlineBox::paintCustomHighlight):
3551 (WebCore::RootInlineBox::paint):
3552 (WebCore::RootInlineBox::nodeAtPoint):
3553 (WebCore::RootInlineBox::childRemoved):
3554 (WebCore::RootInlineBox::fillLineSelectionGap):
3555 (WebCore::RootInlineBox::block):
3556 (WebCore::isEditableLeaf):
3557 (WebCore::RootInlineBox::closestLeafChildForXPos):
3558 (WebCore::RootInlineBox::setVerticalOverflowPositions):
3559 * rendering/RootInlineBox.h:
3560 (WebCore::RootInlineBox::bottomOverflow):
3561 (WebCore::RootInlineBox::floats):
3562 (WebCore::RootInlineBox::setHorizontalOverflowPositions):
3563 (WebCore::RootInlineBox::setVerticalSelectionPositions):
3564 * rendering/SVGCharacterLayoutInfo.cpp:
3565 (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
3566 * rendering/SVGInlineTextBox.cpp:
3567 (WebCore::SVGInlineTextBox::calculateGlyphWidth):
3568 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
3569 (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
3570 (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
3571 (WebCore::SVGInlineTextBox::nodeAtPoint):
3572 (WebCore::SVGInlineTextBox::paintCharacters):
3573 (WebCore::SVGInlineTextBox::paintSelection):
3574 (WebCore::SVGInlineTextBox::paintDecoration):
3575 * rendering/SVGRenderTreeAsText.cpp:
3576 (WebCore::writeSVGInlineTextBox):
3577 * rendering/SVGRootInlineBox.cpp:
3578 (WebCore::SVGRootInlineBoxPaintWalker::SVGRootInlineBoxPaintWalker):
3579 (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback):
3580 (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback):
3581 (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupFillCallback):
3582 (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupStrokeCallback):
3583 (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
3584 (WebCore::SVGRootInlineBox::paint):
3585 (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
3586 (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
3587 (WebCore::svgTextRunForInlineTextBox):
3588 (WebCore::cummulatedWidthOrHeightOfTextChunk):
3589 (WebCore::applyTextAnchorToTextChunk):
3590 (WebCore::SVGRootInlineBox::buildLayoutInformation):
3591 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
3592 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):