1 2010-05-27 Yury Semikhatsky <yurys@chromium.org>
3 Reviewed by Pavel Feldman.
5 [v8] Web Inspector: notify ScriptDebugListener when execution is resumed
6 https://bugs.webkit.org/show_bug.cgi?id=39838
8 * bindings/v8/ScriptDebugServer.cpp:
9 (WebCore::ScriptDebugServer::handleV8DebugEvent):
11 2010-05-27 Anders Bakken <agbakken@gmail.com>
13 Reviewed by David Levin.
15 qt_pixmapruntime.cpp has coding-style errors
16 https://bugs.webkit.org/show_bug.cgi?id=39745
18 Fix webkit coding style issues in qt_pixmapruntime.cpp
20 * bridge/qt/qt_pixmapruntime.cpp:
22 2010-05-26 Jeremy Orlow <jorlow@chromium.org>
24 Reviewed by Steve Block.
26 Clean up IndexedDB layout tests
27 https://bugs.webkit.org/show_bug.cgi?id=39748
29 Remove an assert that always fires.
31 Tests: storage/indexeddb/idb-database-request.html
32 storage/indexeddb/indexed-database-request.html
34 * storage/IDBDatabaseImpl.cpp:
35 (WebCore::IDBDatabaseImpl::objectStores):
37 2010-05-27 Pavel Feldman <pfeldman@chromium.org>
39 Reviewed by Yury Semikhatsky.
41 Web Inspector: Get CSS rule offsets lazily.
43 https://bugs.webkit.org/show_bug.cgi?id=39832
45 * inspector/InspectorCSSStore.cpp:
46 (WebCore::InspectorCSSStore::getStartEndOffsets):
47 * inspector/InspectorDOMAgent.cpp:
48 (WebCore::InspectorDOMAgent::buildObjectForRule):
50 2010-05-27 Anders Bakken <agbakken@gmail.com>
52 Reviewed by David Levin.
54 qt_class.cpp has coding-style errors
55 https://bugs.webkit.org/show_bug.cgi?id=39741
57 Fix webkit coding style issues in qt_class.cpp
59 * bridge/qt/qt_class.cpp:
60 (JSC::Bindings::QtClass::fieldNamed):
62 2010-05-27 Eric Seidel <eric@webkit.org>
64 Reviewed by Darin Adler.
66 Remove bit-rotten INSTRUMENT_LAYOUT_SCHEDULING code from HTMLTokenizer
67 https://bugs.webkit.org/show_bug.cgi?id=39714
69 This came from a discussion on #webkit with Hyatt about this code
70 being old and no longer used to either of our knowledge.
72 No functional changes, thus no tests.
74 I also removed a bogus FIXME I had added in an earlier patch
75 before I understood what the HTMLTokenizer was trying to do.
77 * html/HTMLTokenizer.cpp:
78 (WebCore::HTMLTokenizer::scriptHandler):
79 (WebCore::HTMLTokenizer::scriptExecution):
80 (WebCore::HTMLTokenizer::continueProcessing):
81 (WebCore::HTMLTokenizer::willWriteHTML):
82 (WebCore::HTMLTokenizer::didWriteHTML):
83 (WebCore::HTMLTokenizer::timerFired):
84 (WebCore::HTMLTokenizer::executeExternalScriptsIfReady):
86 2010-05-27 Anton Muhin <antonm@chromium.org>
88 Reviewed by Adam Barth.
90 Add callbacks to ScriptController to allow notifications on named items additions and removals
91 https://bugs.webkit.org/show_bug.cgi?id=39679
93 * bindings/js/ScriptController.h: Callbacks with empty implementation added.
94 (WebCore::ScriptController::namedItemAdded):
95 (WebCore::ScriptController::namedItemRemoved):
96 * bindings/v8/ScriptController.cpp: Empty implementation of callbacks.
97 (WebCore::ScriptController::namedItemAdded):
98 (WebCore::ScriptController::namedItemRemoved):
99 * bindings/v8/ScriptController.h: Callbacks added.
100 * html/HTMLDocument.cpp: Hooking in callbacks.
101 (WebCore::HTMLDocument::addItemToMap):
102 (WebCore::HTMLDocument::removeItemFromMap):
103 * html/HTMLDocument.h:
105 2010-05-27 Zhenyao Mo <zmo@google.com>
107 Reviewed by Dimitri Glazkov.
109 Implement lazy clearing of renderbuffers
110 https://bugs.webkit.org/show_bug.cgi?id=36248
112 Test: fast/canvas/webgl/renderbuffer-initialization.html
114 * html/canvas/WebGLFramebuffer.cpp:
115 (WebCore::WebGLFramebuffer::WebGLFramebuffer): Init added members.
116 (WebCore::WebGLFramebuffer::setAttachment): Set attachment object.
117 (WebCore::WebGLFramebuffer::onBind): Perform buffer clearing if needed.
118 (WebCore::WebGLFramebuffer::onAttachedObjectChange): Ditto.
119 (WebCore::WebGLFramebuffer::isUninitialized): Check whether an attached object is uninitialized renderbuffer.
120 (WebCore::WebGLFramebuffer::setInitialized): After initialize a renderbuffer, set the flag.
121 (WebCore::WebGLFramebuffer::initializeRenderbuffers): Clear un-initialized renderbuffers if framebuffer is complete.
122 * html/canvas/WebGLFramebuffer.h:
123 (WebCore::WebGLFramebuffer::isDepthAttached): Changed to check object.
124 (WebCore::WebGLFramebuffer::isStencilAttached): Ditto.
125 (WebCore::WebGLFramebuffer::isDepthStencilAttached): Ditto.
126 * html/canvas/WebGLRenderbuffer.cpp:
127 (WebCore::WebGLRenderbuffer::WebGLRenderbuffer): Init added members.
128 * html/canvas/WebGLRenderbuffer.h:
129 (WebCore::WebGLRenderbuffer::isInitialized): As the function name.
130 (WebCore::WebGLRenderbuffer::setInitialized): Ditto.
131 * html/canvas/WebGLRenderingContext.cpp:
132 (WebCore::WebGLRenderingContext::bindFramebuffer): Call onBind().
133 (WebCore::WebGLRenderingContext::copyTexImage2D): Call onAttachedObjectChange().
134 (WebCore::WebGLRenderingContext::deleteRenderbuffer): Ditto.
135 (WebCore::WebGLRenderingContext::deleteTexture): Ditto.
136 (WebCore::WebGLRenderingContext::framebufferRenderbuffer): Call setAttachment.
137 (WebCore::WebGLRenderingContext::framebufferTexture2D): Call onAttachedObjectChange().
138 (WebCore::WebGLRenderingContext::renderbufferStorage): Ditto.
139 (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
140 * platform/graphics/mac/GraphicsContext3DMac.cpp:
141 (WebCore::GraphicsContext3D::reshape): Initialize internal buffers.
143 2010-05-27 Kristian Monsen <kristianm@google.com>
145 Reviewed by Darin Adler.
147 Compile fix for Android, added include for Refcounted.h, this did not get
148 included through Threading.h in Android.
149 https://bugs.webkit.org/show_bug.cgi?id=39678
151 Build fix only, no new tests.
153 * storage/SQLTransactionSyncCallback.h:
155 2010-05-27 Joone Hur <joone@kldp.org>
157 Reviewed by Xan Lopez.
159 Add GtkVersioning.h in ScrollbackGtk.cpp for maintaining compatibility with the previous GTK+
161 https://bugs.webkit.org/show_bug.cgi?id=39567
163 * platform/gtk/ScrollbarGtk.cpp:
165 2010-05-27 Hans Wennborg <hans@chromium.org>
167 Reviewed by Alexey Proskuryakov.
169 Increase limit on number of (i)frames from 200 to 1000.
170 https://bugs.webkit.org/show_bug.cgi?id=39427
172 The limit on number of iframes was introduced in r3707 back in 2003.
173 An example of a page that is broken because of this is:
174 http://vimcolorschemetest.googlecode.com/svn/html/index-c.html
175 Neither Firefox nor IE has such a limit.
177 It seems that WebKit can handle a significantly higher number of frames, and
178 the original reasons for imposing the limit are believed to be gone.
180 Tests: compositing/iframes/lots-of-iframes.html
181 compositing/iframes/lots-of-objects.html
183 * html/HTMLFrameElementBase.cpp:
184 (WebCore::HTMLFrameElementBase::isURLAllowed):
185 * page/FrameTree.cpp:
186 (WebCore::FrameTree::uniqueChildName):
188 * rendering/RenderEmbeddedObject.cpp:
189 (WebCore::isURLAllowed):
191 2010-05-27 Kwang Yul Seo <skyul@company100.net>
193 Reviewed by Xan Lopez.
195 [GTK] writeToFile fails when length is large
196 https://bugs.webkit.org/show_bug.cgi?id=39666
198 writeToFile forgot to increment data pointer.
200 * platform/gtk/FileSystemGtk.cpp:
201 (WebCore::writeToFile):
203 2010-05-26 David Hyatt <hyatt@apple.com>
205 Reviewed by Sam Weinig.
207 https://bugs.webkit.org/show_bug.cgi?id=39783, clean up the moveChild functions on RenderBlock.
209 Eliminate the need to pass the toChildrenList to the moveChild functions by tightening up the type of the
210 |to| argument to be a RenderBlock.
212 Add a moveChildrenTo function that can move a range of children, and patch places that were doing this
215 Make the append forms of the functions just use the insert forms with a beforeChild of 0.
217 Patch insertChildNode in RenderObjectChildList so that it passes the fullInsert parameter through in the
218 case where it does an append.
220 Add an assert to RenderLayer that catches bad structure built when the fullInsert/Remove parameters are
221 messed up when using append/insertChildNode.
223 * rendering/RenderBlock.cpp:
224 (WebCore::RenderBlock::splitAnonymousBlocksAroundChild):
225 (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks):
226 (WebCore::RenderBlock::createAndAppendRootInlineBox):
227 (WebCore::RenderBlock::moveChildTo):
228 (WebCore::RenderBlock::moveChildrenTo):
229 (WebCore::RenderBlock::makeChildrenNonInline):
230 (WebCore::RenderBlock::removeChild):
231 * rendering/RenderBlock.h:
232 (WebCore::RenderBlock::moveChildTo):
233 (WebCore::RenderBlock::moveAllChildrenTo):
234 (WebCore::RenderBlock::moveChildrenTo):
235 * rendering/RenderLayer.cpp:
236 (WebCore::RenderLayer::addChild):
237 * rendering/RenderObjectChildList.cpp:
238 (WebCore::RenderObjectChildList::insertChildNode):
239 * rendering/RenderRubyBase.cpp:
240 (WebCore::RenderRubyBase::moveInlineChildren):
242 2010-05-27 Eric Seidel <eric@webkit.org>
244 Reviewed by Adam Barth.
246 Add <pre>/<listing> hack to HTML5Lexer to fix the last remaining HTML5 test suite regressions
247 https://bugs.webkit.org/show_bug.cgi?id=39818
249 HTML parsers are supposed to ignore the first \n after a <pre> or <listing> tag
250 for authoring convenience. Our new HTML5Lexer didn't have this hack yet
251 so there were 4 HTML5 tests failing. Fixing this fixed the last of the HTML5
252 test suite regressions using the HTML5Lexer vs the old lexer.
254 * html/HTML5Lexer.cpp:
255 (WebCore::HTML5Lexer::reset):
256 (WebCore::HTML5Lexer::nextToken):
258 (WebCore::HTML5Lexer::skipLeadingNewLineForListing):
259 * html/HTML5TreeBuilder.cpp:
260 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
262 2010-05-26 Eric Seidel <eric@webkit.org>
264 Reviewed by Adam Barth.
266 Teach the HTML5 parser how to handle external scripts
267 https://bugs.webkit.org/show_bug.cgi?id=39716
269 Make it possible for the HTML5Tokenizer to run external scripts.
270 I created a new class HTML5ScriptRunner to hold all of the
271 script-logic which is scattered throughout the old HTMLTokenizer.
273 The design is for the HTML5Tokenizer (the "controller") to hold
274 the Lexer, TreeBuilder and ScriptRunner. The Lexer returns back
275 to the controller, which passes tokens to the TreeBuilder. When the
276 treebuilder encounters a </script> tag it pauses itself and returns
277 back to the controller which calls the ScriptRunner. The TreeBuilder
278 is un-paused when the HTML5Tokenizer calls takeScriptToProcess().
280 The ScriptRunner attempts to process the passed script, and additionally
281 any blocked scripts it can. It returns to the controller indicating if
282 parsing should continue. If not, callbacks when external scripts load
283 or when stylesheets are finished parsing will cause the controller to
284 kick off script execution and parsing again at a later point.
286 * WebCore.xcodeproj/project.pbxproj:
287 - Add HTML5ScriptRunner.*
288 * bindings/js/CachedScriptSourceProvider.h:
289 - Add missing include discovered while building.
290 * dom/ScriptElement.cpp:
291 (WebCore::ScriptElement::finishParsingChildren):
292 - Remove previous hack for inline <script> execution.
293 * dom/ScriptElement.h:
294 - Explain the HTML5 spec names for m_evaluated and m_createdByParser.
295 * html/HTML5ScriptRunner.cpp: Added.
296 (WebCore::HTML5ScriptRunner::HTML5ScriptRunner):
297 - The HTML5Tokenizer is passed to the HTML5ScriptRunner as a
298 CachedResourceClient. The HTML5ScriptRunner will register the
299 HTML5Tokenizer for notifyFinished callbacks when the scripts load.
300 The HTML5Tokenizer is expected to call the HTML5ScriptRunner to
301 execute any loaded scripts at that point.
302 (WebCore::HTML5ScriptRunner::~HTML5ScriptRunner):
303 (WebCore::HTML5ScriptRunner::frame): Helper method.
304 (WebCore::createScriptLoadEvent): Helper method.
305 (WebCore::createScriptErrorEvent): Helper method.
306 (WebCore::HTML5ScriptRunner::sourceFromPendingScript):
307 - Helper method for dealing with both inline and external script types.
308 (WebCore::HTML5ScriptRunner::isPendingScriptReady):
309 - Helper for dealing with both inline and external scripts.
310 (WebCore::HTML5ScriptRunner::executePendingScript):
311 - Execute one script. Both external and inline scripts
312 can become m_parsingBlockingScript if they can't be executed
313 immediately after parsing.
314 (WebCore::HTML5ScriptRunner::execute):
315 - Takes a script element from the tree builder and tries
317 (WebCore::HTML5ScriptRunner::executeParsingBlockingScripts):
318 - Runs the current parsing blocking script if ready.
319 - Running a script could add another parsing blocking script
320 so we loop until there is no ready-to-run parsing blocking script.
321 (WebCore::HTML5ScriptRunner::executeScriptsWaitingForLoad):
322 - Called by HTML5Tokenizer when a script loads.
323 (WebCore::HTML5ScriptRunner::executeScriptsWaitingForStylesheets):
324 - Called by HTML5Tokenizer when stylesheets complete.
325 (WebCore::HTML5ScriptRunner::requestScript):
326 - Transcription of the HTML5 spec.
327 (WebCore::HTML5ScriptRunner::runScript):
328 - Transcription of the HTML5 spec.
329 * html/HTML5ScriptRunner.h: Added.
330 - New class to handle script loading and execution for the HTML5 parser.
331 * html/HTML5Tokenizer.cpp:
332 (WebCore::HTML5Tokenizer::HTML5Tokenizer):
333 - Create a HTML5ScriptRunner and pass it "this" as the CachedResourceClient.
334 (WebCore::HTML5Tokenizer::pumpLexer):
335 - When the parser is paused, try to run scripts.
336 (WebCore::HTML5Tokenizer::write):
337 - Only pump the lexer when the parser is not paused.
338 (WebCore::HTML5Tokenizer::end):
339 - finish() tells us that we've reached EOF, not end()
340 - Only pump the lexer when the parser is not paused.
341 (WebCore::HTML5Tokenizer::finish):
342 - Mark EOF, and end() if we're not waiting on scripts.
343 (WebCore::HTML5Tokenizer::isWaitingForScripts):
344 - isPaused() seems to mean isPausedForExternalScripts().
345 (WebCore::HTML5Tokenizer::resumeParsingAfterScriptExecution):
346 (WebCore::HTML5Tokenizer::notifyFinished):
347 (WebCore::HTML5Tokenizer::executeScriptsWaitingForStylesheets):
348 * html/HTML5Tokenizer.h:
349 * html/HTML5TreeBuilder.cpp:
350 (WebCore::HTML5TreeBuilder::HTML5TreeBuilder):
351 - Add an m_isPaused flag.
352 (WebCore::HTML5TreeBuilder::handleScriptStartTag):
353 (WebCore::HTML5TreeBuilder::handleScriptEndTag):
354 (WebCore::HTML5TreeBuilder::takeScriptToProcess):
355 - Acknowledge that the caller has received the script element.
356 It is the caller's responsibility to execute the script if necessary
357 and re-pause the tree builder if necessary.
358 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
359 - Save off the current script tag so that it can be passed to
360 the HTML5ScriptRunner when we're paused.
361 * html/HTML5TreeBuilder.h:
362 (WebCore::HTML5TreeBuilder::setPaused):
363 (WebCore::HTML5TreeBuilder::isPaused):
365 2010-05-26 Adam Barth <abarth@webkit.org>
367 Reviewed by Darin Adler.
369 Implement SegmentedString::lookAheadSlowCase
370 https://bugs.webkit.org/show_bug.cgi?id=39802
372 The slow case is need by the resumer test suite. Sadly, the resumer
373 test suite is really slow and produces infinite errors (many of which
374 are false positives). I'll land more of the resumer test suite in a
377 * platform/text/SegmentedString.cpp:
378 (WebCore::SegmentedString::advance):
379 * platform/text/SegmentedString.h:
380 (WebCore::SegmentedString::lookAhead):
381 (WebCore::SegmentedString::lookAheadIgnoringCase):
382 (WebCore::SegmentedString::equalsLiterally):
383 (WebCore::SegmentedString::equalsIgnoringCase):
384 (WebCore::SegmentedString::lookAheadInline):
385 (WebCore::SegmentedString::lookAheadSlowCase):
387 2010-05-26 Jer Noble <jer.noble@apple.com>
389 Patch edited by Adele Peterson and Mark Rowe.
390 Reviewed by Eric Carlson
392 Video elements show no video on Windows machines that do not support accelerated compositing
393 https://bugs.webkit.org/show_bug.cgi?id=39446
394 rdar://problem/7999794
396 Create the visual context in setUpVideoRendering (as opposed to in load), and destroy it in
397 tearDownVideoRendering (as opposed to in the destructor.)
399 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
400 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::~MediaPlayerPrivateQuickTimeVisualContext):
401 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load): Moved creation of the visual context to setUpVideoRendering.
402 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::paint): Return early if the visual context isn't set up.
403 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::currentRenderingMode): If the visual context isn't set up,
404 return MediaRenderingNone.
405 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpVideoRendering): Create the visual context.
406 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::tearDownVideoRendering): Destroy the visual context.
407 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::hasSetUpVideoRendering): For software rendering mode,
408 make sure the visual context has been set up when saying the setup has been done.
409 * platform/graphics/win/QTMovieVisualContext.cpp:
410 (QTMovieVisualContextPriv::~QTMovieVisualContextPriv): Destruction moved to tearDownVideoRendering.
411 Also, make sure to cancel the visual context's newImageAvailable callback in the visual context's destructor.
412 (QTMovieVisualContext::create): Added.
413 * platform/graphics/win/QTMovieVisualContext.h:
415 2010-05-26 Gustavo Noronha Silva <gns@gnome.org>
417 Build fixes for make distcheck.
421 2010-05-26 Zelidrag Hornung <zelidrag@chromium.org>
423 Reviewed by Ojan Vafai.
425 Fixed frame page up/down scrolling calculation. Made sure that the
426 cursor moves with page up/down event. Please note that now for mac
427 editing behavior we will scroll the content to center the cursor on
428 page up/down while other platforms will align the cursor with the top of
430 https://bugs.webkit.org/show_bug.cgi?id=38213
432 Tests: editing/input/option-page-up-down.html (fixed)
433 editing/input/scroll-viewport-page-up-down.html
436 * editing/EditorCommand.cpp:
437 (WebCore::verticalScrollDistance): Fixed page scroll calculation. Now scroll height is calculated only from the visible portion not the entire frame height.
438 (WebCore::executeMovePageDown): Now it can tell SelectionController to move the cursor with the page scroll up/down events.
439 (WebCore::executeMovePageDownAndModifySelection): Ditto.
440 (WebCore::executeMovePageUp): Ditto.
441 (WebCore::executeMovePageUpAndModifySelection): Ditto.
442 * editing/SelectionController.cpp:
443 * editing/SelectionController.cpp: Exposed an enum param that lets EditorCommand.cpp control how cursor position will be aligned when page moves.
444 (WebCore::SelectionController::setSelection): Ditto.
445 (WebCore::SelectionController::modify): Ditto.
446 * editing/SelectionController.h: Ditto.
447 (WebCore::SelectionController::): Ditto.
448 (WebCore::SelectionController::setSelection): Ditto.
450 2010-05-26 Jaime Yap <jaimeyap@google.com>
452 Reviewed by Pavel Feldman.
454 ScriptCallStack::callLocation() sometimes passed an empty handle to
455 toWebCoreString() causing a null pointer deref.
456 https://bugs.webkit.org/show_bug.cgi?id=39681
458 * bindings/v8/ScriptCallStack.cpp:
459 (WebCore::ScriptCallStack::callLocation):
461 2010-05-26 Brian Weinstein <bweinstein@apple.com>
463 Reviewed by Mark Rowe.
465 Web Inspector: Tooltip on Pause on Exceptions doesn't show up until it is clicked.
466 https://bugs.webkit.org/show_bug.cgi?id=39804
468 Initialize the title attribute of the Pause on Exceptions button when we initialize other information
471 * inspector/front-end/ScriptsPanel.js:
472 (WebInspector.ScriptsPanel):
474 2010-05-26 Adam Barth <abarth@webkit.org>
476 Unreviewed, rolling out r60262.
477 http://trac.webkit.org/changeset/60262
478 https://bugs.webkit.org/show_bug.cgi?id=39783
480 Broke every build and is blocking me from working. :(
482 * rendering/RenderBlock.cpp:
483 (WebCore::RenderBlock::splitAnonymousBlocksAroundChild):
484 (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks):
485 (WebCore::RenderBlock::moveChildTo):
486 (WebCore::RenderBlock::moveAllChildrenTo):
487 (WebCore::RenderBlock::makeChildrenNonInline):
488 (WebCore::RenderBlock::removeChild):
489 * rendering/RenderBlock.h:
490 * rendering/RenderLayer.cpp:
491 (WebCore::RenderLayer::addChild):
492 * rendering/RenderObjectChildList.cpp:
493 (WebCore::RenderObjectChildList::insertChildNode):
494 * rendering/RenderRubyBase.cpp:
495 (WebCore::RenderRubyBase::moveInlineChildren):
496 (WebCore::RenderRubyBase::moveBlockChildren):
497 (WebCore::RenderRubyBase::mergeBlockChildren):
499 2010-05-26 Anders Carlsson <andersca@apple.com>
501 Unreviewed, rolling out r60256.
502 http://trac.webkit.org/changeset/60256
503 https://bugs.webkit.org/show_bug.cgi?id=39382
505 Causes fast/dom/prototype-inheritance-2.html to start
508 * history/PageCache.cpp:
509 (WebCore::PageCache::PageCache):
510 (WebCore::PageCache::add):
511 * history/PageCache.h:
512 (WebCore::PageCache::get):
513 * loader/DocumentLoader.cpp:
514 (WebCore::DocumentLoader::commitIfReady):
515 * loader/FrameLoader.cpp:
516 (WebCore::FrameLoader::canCachePageContainingThisFrame):
517 (WebCore::FrameLoader::canCachePage):
518 (WebCore::pageCacheLogPrefix):
519 (WebCore::pageCacheLog):
520 (WebCore::FrameLoader::logCanCachePageDecision):
521 (WebCore::FrameLoader::logCanCacheFrameDecision):
522 (WebCore::FrameLoader::commitProvisionalLoad):
523 (WebCore::FrameLoader::open):
524 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
525 (WebCore::FrameLoader::loadProvisionalItemFromCachedPage):
526 (WebCore::FrameLoader::cachePageForHistoryItem):
527 (WebCore::FrameLoader::navigateToDifferentDocument):
528 * loader/FrameLoader.h:
529 * svg/graphics/SVGImage.cpp:
530 (WebCore::SVGImage::dataChanged):
532 2010-05-26 David Hyatt <hyatt@apple.com>
534 Reviewed by Sam Weinig.
536 https://bugs.webkit.org/show_bug.cgi?id=39783, clean up the moveChild functions on RenderBlock.
538 Eliminate the need to pass the toChildrenList to the moveChild functions by tightening up the type of the
539 |to| argument to be a RenderBlock.
541 Add a moveChildrenTo function that can move a range of children, and patch places that were doing this
544 Make the append forms of the functions just use the insert forms with a beforeChild of 0.
546 Patch insertChildNode in RenderObjectChildList so that it passes the fullInsert parameter through in the
547 case where it does an append.
549 Add an assert to RenderLayer that catches bad structure built when the fullInsert/Remove parameters are
550 messed up when using append/insertChildNode.
552 * rendering/RenderBlock.cpp:
553 (WebCore::RenderBlock::splitAnonymousBlocksAroundChild):
554 (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks):
555 (WebCore::RenderBlock::createAndAppendRootInlineBox):
556 (WebCore::RenderBlock::moveChildTo):
557 (WebCore::RenderBlock::moveChildrenTo):
558 (WebCore::RenderBlock::makeChildrenNonInline):
559 (WebCore::RenderBlock::removeChild):
560 * rendering/RenderBlock.h:
561 (WebCore::RenderBlock::moveChildTo):
562 (WebCore::RenderBlock::moveAllChildrenTo):
563 (WebCore::RenderBlock::moveChildrenTo):
564 * rendering/RenderLayer.cpp:
565 (WebCore::RenderLayer::addChild):
566 * rendering/RenderObjectChildList.cpp:
567 (WebCore::RenderObjectChildList::insertChildNode):
568 * rendering/RenderRubyBase.cpp:
569 (WebCore::RenderRubyBase::moveInlineChildren):
571 2010-05-26 Anders Carlsson <andersca@apple.com>
573 Fix GTK+ test failures.
575 * plugins/gtk/PluginDataGtk.cpp:
576 (WebCore::PluginData::initPlugins):
577 * plugins/win/PluginDataWin.cpp:
578 (WebCore::PluginData::initPlugins):
580 2010-05-25 Anders Carlsson <andersca@apple.com>
582 Reviewed by Darin Adler.
584 Clean up MimeClassInfo and PluginInfo
585 https://bugs.webkit.org/show_bug.cgi?id=39700
587 This gets rid of all the heap allocation from MimeClassInfo and PluginInfo.
589 It also changes the m_plugins and m_mimes vectors in PluginData to not hold heap allocated MimeClassInfo
590 and PluginClassInfo objects.
593 (WebCore::Page::refreshPlugins):
594 * plugins/MimeType.cpp:
595 (WebCore::MimeType::type):
596 (WebCore::MimeType::suffixes):
597 (WebCore::MimeType::description):
598 (WebCore::MimeType::enabledPlugin):
599 * plugins/MimeType.h:
600 (WebCore::MimeType::mimeClassInfo):
601 * plugins/MimeTypeArray.cpp:
602 (WebCore::MimeTypeArray::item):
603 (WebCore::MimeTypeArray::canGetItemsForName):
604 (WebCore::MimeTypeArray::namedItem):
605 * plugins/Plugin.cpp:
606 (WebCore::Plugin::name):
607 (WebCore::Plugin::filename):
608 (WebCore::Plugin::description):
609 (WebCore::Plugin::length):
610 (WebCore::Plugin::item):
611 (WebCore::Plugin::canGetItemsForName):
612 (WebCore::Plugin::namedItem):
614 (WebCore::Plugin::pluginInfo):
615 * plugins/PluginArray.cpp:
616 (WebCore::PluginArray::length):
617 (WebCore::PluginArray::item):
618 (WebCore::PluginArray::canGetItemsForName):
619 (WebCore::PluginArray::namedItem):
620 (WebCore::PluginArray::pluginData):
621 * plugins/PluginArray.h:
622 * plugins/PluginData.cpp:
623 (WebCore::PluginData::PluginData):
624 (WebCore::PluginData::~PluginData):
625 (WebCore::PluginData::supportsMimeType):
626 (WebCore::PluginData::pluginNameForMimeType):
627 * plugins/PluginData.h:
628 (WebCore::operator==):
629 (WebCore::PluginData::create):
630 (WebCore::PluginData::disconnectPage):
631 (WebCore::PluginData::page):
632 (WebCore::PluginData::plugins):
633 (WebCore::PluginData::mimes):
634 * plugins/chromium/PluginDataChromium.cpp:
635 (WebCore::PluginCache::reset):
636 (WebCore::PluginCache::plugins):
637 (WebCore::PluginData::initPlugins):
638 (WebCore::getPluginMimeTypeFromExtension):
639 * plugins/gtk/PluginDataGtk.cpp:
640 (WebCore::PluginData::initPlugins):
641 * plugins/mac/PluginDataMac.mm:
642 (WebCore::PluginData::initPlugins):
643 * plugins/qt/PluginDataQt.cpp:
644 (WebCore::PluginData::initPlugins):
645 * plugins/win/PluginDataWin.cpp:
646 (WebCore::PluginData::initPlugins):
647 * plugins/wx/PluginDataWx.cpp:
648 (WebCore::PluginData::initPlugins):
650 2010-05-26 Nate Chapin <japhet@chromium.org>
652 Reviewed by Adam Barth.
654 Factor PageCache functionality out of FrameLoader and into
657 https://bugs.webkit.org/show_bug.cgi?id=39382
659 Refactor only, so no new tests.
661 * history/PageCache.cpp:
662 (WebCore::pageCacheLogPrefix):
663 (WebCore::pageCacheLog):
664 (WebCore::logCanCacheFrameDecision):
665 (WebCore::logCanCachePageDecision):
666 (WebCore::PageCache::canCachePageContainingThisFrame):
667 (WebCore::PageCache::canCache):
668 (WebCore::PageCache::add):
669 (WebCore::PageCache::get):
670 * history/PageCache.h:
671 * loader/DocumentLoader.cpp:
672 * loader/FrameLoader.cpp:
673 (WebCore::FrameLoader::commitProvisionalLoad):
674 (WebCore::FrameLoader::prepareForCachedPageRestore):
675 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
676 (WebCore::FrameLoader::loadProvisionalItemFromCachedPage):
677 (WebCore::FrameLoader::navigateToDifferentDocument):
678 * loader/FrameLoader.h:
679 (WebCore::FrameLoader::quickRedirectComing):
680 * svg/graphics/SVGImage.cpp:
682 2010-05-26 Peter Kasting <pkasting@google.com>
684 Reviewed by Adam Barth.
686 https://bugs.webkit.org/show_bug.cgi?id=39786
687 Properly reset |bytes_to_consume| when reaching the "gif_done" state in
688 the open-source GIF decoder.
690 No tests, since there's no test harness support for checking the
691 internal ImageDecoder state values.
693 * platform/image-decoders/gif/GIFImageReader.cpp:
694 (GIFImageReader::read): Use a macro to perform the state change, like we do everywhere else in the file. Also correctly return "failure" for certain corrupt GIFs, since that doesn't prevent their display (due to WebKit's different use of this code compared to Mozilla).
696 2010-05-26 Sheriff Bot <webkit.review.bot@gmail.com>
698 Unreviewed, rolling out r60251.
699 http://trac.webkit.org/changeset/60251
700 https://bugs.webkit.org/show_bug.cgi?id=39788
702 broke tests (Requested by dhyatt on #webkit).
704 * rendering/RenderBlock.cpp:
705 (WebCore::RenderBlock::moveChildTo):
706 (WebCore::RenderBlock::moveAllChildrenTo):
707 (WebCore::RenderBlock::makeChildrenNonInline):
708 (WebCore::RenderBlock::removeChild):
709 * rendering/RenderBlock.h:
710 * rendering/RenderRubyBase.cpp:
711 (WebCore::RenderRubyBase::moveInlineChildren):
712 (WebCore::RenderRubyBase::moveBlockChildren):
713 (WebCore::RenderRubyBase::mergeBlockChildren):
714 * rendering/RenderRubyRun.cpp:
715 (WebCore::RenderRubyRun::removeChild):
717 2010-05-26 Adam Barth <abarth@webkit.org>
719 Reviewed by Eric Seidel.
721 Fix webkit01.dat resumer tests in HTML5 parser
722 https://bugs.webkit.org/show_bug.cgi?id=39796
724 To match the old tokenizer, we should only flush character tokens when
725 we reach EOF. Added a notion of a "closed" segmented string that
726 cannot be appended to, which models EOF.
728 * html/HTML5Lexer.cpp:
729 (WebCore::HTML5Lexer::nextToken):
730 (WebCore::HTML5Lexer::shouldEmitBufferedCharacterToken):
732 * html/HTML5Tokenizer.cpp:
733 (WebCore::HTML5Tokenizer::pumpLexer):
734 (WebCore::HTML5Tokenizer::write):
735 (WebCore::HTML5Tokenizer::end):
736 * html/HTML5Tokenizer.h:
737 * platform/text/SegmentedString.cpp:
738 (WebCore::SegmentedString::SegmentedString):
739 (WebCore::SegmentedString::clear):
740 (WebCore::SegmentedString::append):
741 * platform/text/SegmentedString.h:
742 (WebCore::SegmentedString::SegmentedString):
743 (WebCore::SegmentedString::close):
744 (WebCore::SegmentedString::isClosed):
746 2010-05-26 Adam Barth <abarth@webkit.org>
748 Reviewed by Eric Seidel.
750 Make HTML5 lexer not ASSERT when resuming partial parses
751 https://bugs.webkit.org/show_bug.cgi?id=39755
753 I'm working through a variation of the webkit-runner.html test suite
754 that stops the parser at every character to make sure we can resume
755 parsing correctly. This patch fixes some errors caught by ASSERTs,
756 which prevent the basic tests from running to completion. There's a
757 bunch more work to do, however.
759 Test: html5lib/webkit-resumer.html
761 * html/HTML5Lexer.cpp:
762 (WebCore::HTMLNames::isEndTagBufferingState):
763 (WebCore::HTML5Lexer::nextToken):
764 (WebCore::HTML5Lexer::addToPossibleEndTag):
766 * html/HTML5Tokenizer.cpp:
767 (WebCore::HTML5Tokenizer::write):
768 * html/HTML5Tokenizer.h:
770 2010-05-26 Alexey Proskuryakov <ap@apple.com>
772 Mac 32 bit build fix.
774 * platform/graphics/mac/SimpleFontDataMac.mm: (WebCore::SimpleFontData::platformInit):
775 Use static_cast instead of narrowPrecisionToFloat - the latter can't convert from float to float.
777 2010-05-26 David Hyatt <hyatt@apple.com>
781 https://bugs.webkit.org/show_bug.cgi?id=39783, clean up moveChild functions in RenderBlock.
783 Cut out the need to pass the to block's child list by tightening up the type of the to object
784 from RenderObject to RenderBlock.
786 Implement the "append" versions of the move functions using their "insert" counterparts, since
787 insertChildNode just calls appendChildNode when beforeChild is 0 anyway.
789 Add comments explaining why the default for fullRemoveInsert is false, and make sure all forms
790 of the move functions have the optional parameter for consistency.
792 * rendering/RenderBlock.cpp:
793 (WebCore::RenderBlock::createAndAppendRootInlineBox):
794 (WebCore::RenderBlock::moveChildTo):
795 (WebCore::RenderBlock::moveAllChildrenTo):
796 (WebCore::RenderBlock::makeChildrenNonInline):
797 (WebCore::RenderBlock::removeChild):
798 * rendering/RenderBlock.h:
799 (WebCore::RenderBlock::moveChildTo):
800 (WebCore::RenderBlock::moveAllChildrenTo):
801 * rendering/RenderRubyBase.cpp:
802 (WebCore::RenderRubyBase::moveInlineChildren):
803 (WebCore::RenderRubyBase::moveBlockChildren):
804 (WebCore::RenderRubyBase::mergeBlockChildren):
805 * rendering/RenderRubyRun.cpp:
806 (WebCore::RenderRubyRun::removeChild):
808 2010-05-26 Dan Bernstein <mitz@apple.com>
810 Typed and reviewed by Alexey Proskuryakov.
812 https://bugs.webkit.org/show_bug.cgi?id=39682
813 <rdar://problem/8026774> REGRESSION: WebKit nightly adding insane height to div at random
815 Test: fast/css/custom-font-xheight.html
817 * platform/graphics/mac/SimpleFontDataMac.mm: (WebCore::SimpleFontData::platformInit):
818 Calling an Objective C method that returns a structure with a null object can leave garbage in
819 returned value. Custom fonts don't have an NSFont, they only have a CGFont. Call
820 platformBoundsForGlyph() function instead, which works with CGFont.
821 (WebCore::SimpleFontData::platformBoundsForGlyph): Fixed to work on Tiger (for fonts that
822 have an NSFont), since this is now used in more cases.
824 2010-05-26 Beth Dakin <bdakin@apple.com>
826 Build fix for Mac clean builds.
828 * storage/IDBDatabaseRequest.idl:
830 2010-05-26 Eric Carlson <eric.carlson@apple.com>
832 Reviewed by Dan Bernstein.
834 Must not cast between CFNumberRef and CFBooleanRef.
835 <rdar://problem/8030739>
836 https://bugs.webkit.org/show_bug.cgi?id=39756
838 * platform/graphics/win/QTMovieVisualContext.cpp:
839 (QTMovieVisualContext::getCGImageOptions): QuickTime assumes the value associated
840 with kCVPixelBufferCGImageCompatibilityKey is a CFBoolean, so add one.
842 2010-05-26 Xan Lopez <xlopez@igalia.com>
844 GTK+ build fix, strike two.
846 * bindings/gobject/WebKitDOMEventTarget.cpp:
847 (webkit_dom_event_target_get_type):
848 (webkit_dom_event_target_default_init):
850 2010-05-26 Jeremy Orlow <jorlow@chromium.org>
852 Unreviewed build fix for Windows + clean up the Visual Studio project.
855 * WebCore.vcproj/WebCore.vcproj:
857 2010-05-26 Andrei Popescu <andreip@google.com>
859 Reviewed by Jeremy Orlow.
861 Indexed Database component is missing IDBObjectStoreRequest interface
862 https://bugs.webkit.org/show_bug.cgi?id=39490
864 Adding IDL and stub implementation for IDBObjectStoreRequest.
866 No new tests, indexed database isn't yet testable.
868 * DerivedSources.cpp:
869 * DerivedSources.make:
874 * WebCore.xcodeproj/project.pbxproj:
875 * bindings/js/JSIDBObjectStoreRequestCustom.cpp: Added.
876 (WebCore::JSIDBObjectStoreRequest::remove):
877 (WebCore::JSIDBObjectStoreRequest::addOrModify):
878 (WebCore::JSIDBObjectStoreRequest::modify):
879 (WebCore::JSIDBObjectStoreRequest::add):
880 (WebCore::JSIDBObjectStoreRequest::get):
881 * bindings/v8/custom/V8IDBObjectStoreRequestCustom.cpp: Added.
882 (WebCore::V8IDBObjectStoreRequest::removeCallback):
883 (WebCore::V8IDBObjectStoreRequest::addOrModifyCallback):
884 (WebCore::V8IDBObjectStoreRequest::modifyCallback):
885 (WebCore::V8IDBObjectStoreRequest::addCallback):
886 (WebCore::V8IDBObjectStoreRequest::getCallback):
887 * storage/IDBObjectStore.cpp: Added.
888 * storage/IDBObjectStore.h: Added.
889 (WebCore::IDBObjectStore::~IDBObjectStore):
890 * storage/IDBObjectStoreRequest.cpp: Added.
891 (WebCore::IDBObjectStoreRequest::name):
892 (WebCore::IDBObjectStoreRequest::keyPath):
893 (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest):
894 * storage/IDBObjectStoreRequest.h: Added.
895 (WebCore::IDBObjectStoreRequest::create):
896 (WebCore::IDBObjectStoreRequest::~IDBObjectStoreRequest):
897 * storage/IDBObjectStoreRequest.idl: Added.
899 2010-05-26 Xan Lopez <xlopez@igalia.com>
901 Unreviewed GTK+ build fix.
903 Use G_DEFINE_INTERFACE only if it's available.
905 * bindings/gobject/WebKitDOMEventTarget.cpp:
906 (webkit_dom_event_target_get_type):
907 (webkit_dom_event_target_default_init):
909 2010-05-26 Jeremy Orlow <jorlow@chromium.org>
911 Reviewed by Darin Fisher.
913 Implement WebDOMStorageList and make WebIDBDatabase use it
914 https://bugs.webkit.org/show_bug.cgi?id=39731
916 Remove unused function.
918 * dom/DOMStringList.h:
920 2010-05-26 Jessie Berlin <jberlin@webkit.org>
922 Reviewed by Pavel Feldman
924 Bug 31296 - Web Inspector: Should support console.groupCollapsed
925 https://bugs.webkit.org/show_bug.cgi?id=31296
927 * inspector/InspectorController.cpp:
928 (WebCore::InspectorController::startGroup):
929 Set the message type based on whether or not it should be initially collapsed.
930 * inspector/InspectorController.h:
932 * inspector/front-end/ConsoleView.js:
933 Treat a StartGroupCollapsed message the same way as a StartGroup message, but display the tree for the group as collapsed.
934 (WebInspector.ConsoleView.prototype.addMessage):
935 (WebInspector.ConsoleMessage.prototype.toMessageElement):
936 (WebInspector.ConsoleMessage.prototype.toString):
937 (WebInspector.ConsoleGroup.prototype.addMessage):
940 (WebCore::Console::groupCollapsed):
941 Create a group and indicate that it should be collapsed.
943 Add the StartGroupCollapsed message type.
947 Create the JS bindings for groupCollapsed.
949 2010-05-26 yael aharon <yael.aharon@nokia.com>
951 Reviewed by Kent Tamura.
953 Support the labels attribute in labelable form controls
954 https://bugs.webkit.org/show_bug.cgi?id=38713
956 Added a new cache type in NodeRareData to store the new cache type.
957 This cache is created on demand.
959 Added the "labels" attribute to all form controls that support this attribute.
961 Tests: fast/forms/labels-add-htmlFor-label.html
962 fast/forms/labels-add-parent-label.html
963 fast/forms/labels-change-htmlFor-attribute.html
964 fast/forms/labels-item-index.html
965 fast/forms/labels-remove-htmlFor-attribute.html
966 fast/forms/labels-remove-htmlFor-label.html
967 fast/forms/labels-remove-parent-label.html
968 fast/forms/labels-set-htmlFor-attribute.html
974 * WebCore.vcproj/WebCore.vcproj:
975 * WebCore.xcodeproj/project.pbxproj:
977 (WebCore::Node::notifyLocalNodeListsLabelChanged):
978 (WebCore::Node::removeCachedLabelsNodeList):
979 (WebCore::NodeListsNodeData::invalidateCaches):
980 (WebCore::NodeListsNodeData::invalidateCachesThatDependOnAttributes):
981 (WebCore::NodeListsNodeData::isEmpty):
983 * dom/NodeRareData.h:
984 (WebCore::NodeListsNodeData::NodeListsNodeData):
985 * html/HTMLButtonElement.idl:
986 * html/HTMLFormControlElement.cpp:
987 (WebCore::HTMLFormControlElement::isLabelable):
988 (WebCore::HTMLFormControlElement::labels):
989 * html/HTMLFormControlElement.h:
990 * html/HTMLInputElement.idl:
991 * html/HTMLLabelElement.cpp:
992 (WebCore::HTMLLabelElement::parseMappedAttribute):
993 * html/HTMLLabelElement.h:
994 * html/HTMLMeterElement.idl:
995 * html/HTMLProgressElement.idl:
996 * html/HTMLSelectElement.idl:
997 * html/HTMLTextAreaElement.idl:
998 * html/LabelsNodeList.cpp: Added.
999 (WebCore::LabelsNodeList::LabelsNodeList):
1000 (WebCore::LabelsNodeList::~LabelsNodeList):
1001 (WebCore::LabelsNodeList::nodeMatches):
1002 * html/LabelsNodeList.h: Added.
1003 (WebCore::LabelsNodeList::create):
1005 2010-05-26 Xan Lopez <xlopez@igalia.com>
1007 Reviewed by Jeremy Orlow.
1009 Style fix in JSEventCustom.cpp
1010 https://bugs.webkit.org/show_bug.cgi?id=39727
1012 Conditional includes should be all together after the
1013 unconditional includes.
1015 * bindings/js/JSEventCustom.cpp:
1017 2010-05-24 Jeremy Orlow <jorlow@chromium.org>
1019 Reviewed by Steve Block.
1021 Add IDBDatabase's attributes
1022 https://bugs.webkit.org/show_bug.cgi?id=39602
1024 Add the attributes (like name, description, etc) for
1025 IDBDatabaseRequest. Plumb that back to the IDBDatabase
1026 object which stores the data.
1028 CMake and Android build changes in another CL (that
1029 fixes other stuff too).
1031 Updated the layout test, but there's some further testing
1032 that needs to be added once the Chromium side of this lands.
1037 * WebCore.vcproj/WebCore.vcproj
1038 * WebCore.xcodeproj/project.pbxproj
1039 * dom/DOMStringList.h:
1040 (WebCore::DOMStringList::strings):
1041 * storage/IDBDatabase.cpp: Removed.
1042 * storage/IDBDatabase.h:
1043 * storage/IDBDatabaseImpl.cpp: Added.
1044 (WebCore::IDBDatabaseImpl::IDBDatabaseImpl):
1045 (WebCore::IDBDatabaseImpl::~IDBDatabaseImpl):
1046 (WebCore::IDBDatabaseImpl::objectStores):
1047 * storage/IDBDatabaseImpl.h: Added.
1048 (WebCore::IDBDatabaseImpl::create):
1049 (WebCore::IDBDatabaseImpl::name):
1050 (WebCore::IDBDatabaseImpl::description):
1051 (WebCore::IDBDatabaseImpl::version):
1052 * storage/IDBDatabaseRequest.h:
1053 (WebCore::IDBDatabaseRequest::name):
1054 (WebCore::IDBDatabaseRequest::description):
1055 (WebCore::IDBDatabaseRequest::version):
1056 (WebCore::IDBDatabaseRequest::objectStores):
1057 * storage/IDBDatabaseRequest.idl:
1058 * storage/IDBSuccessEvent.cpp:
1059 (WebCore::IDBSuccessEvent::IDBSuccessEvent):
1060 * storage/IndexedDatabaseImpl.cpp:
1061 (WebCore::IndexedDatabaseImpl::open):
1062 * storage/IndexedDatabaseImpl.h:
1064 2010-05-26 Xan Lopez <xlopez@igalia.com>
1066 Reviewed by NOBODY Gustavo Noronha.
1068 [GTK] Add support for DOM events in the GObject DOM bindings
1069 https://bugs.webkit.org/show_bug.cgi?id=38844
1071 Add actual GObject event objects to the DOM event signals.
1074 * bindings/gobject/GObjectEventListener.cpp:
1075 (WebCore::GObjectEventListener::handleEvent):
1076 * bindings/gobject/WebKitDOMBinding.cpp:
1077 (WebKit::wrapEventTarget):
1079 * bindings/gobject/WebKitDOMBinding.h:
1080 * bindings/gobject/WebKitDOMEventTarget.cpp: Added.
1081 (webkit_dom_event_target_default_init):
1082 (webkit_dom_event_target_dispatch_event):
1083 * bindings/gobject/WebKitDOMEventTarget.h: Added.
1084 * bindings/scripts/CodeGeneratorGObject.pm:
1086 2010-05-24 Jeremy Orlow <jorlow@chromium.org>
1088 Reviewed by Steve Block.
1090 [Android] Add IndexedDB to the build
1091 https://bugs.webkit.org/show_bug.cgi?id=39593
1093 Add the current list of build files to Android's make files. From now on,
1094 I'll try to be sure to update these along with the rest.
1095 Also, fix a nit in the gypi file.
1097 No tests..just changing build files.
1099 * Android.derived.jscbindings.mk:
1100 * Android.derived.v8bindings.mk:
1104 2010-05-26 Alexander Pavlov <apavlov@chromium.org>
1106 Reviewed by Pavel Feldman.
1108 Expose CSS rule body start/end offsets in the parent stylesheet
1109 https://bugs.webkit.org/show_bug.cgi?id=38906
1111 CSSParser::parseSheet() accepts an optional external Vector where the start/end offsets
1112 of the CSSStyleRule bodies, relative to the beginning of the stylesheet, will be stored.
1113 This Vector is only used when the Web Inspector needs the body ranges, thus there is no
1114 memory overhead until the user starts editing styles via the Web Inspector.
1115 Additionally, fixed an issue with a single inspectorStyleSheet for all frames in the page.
1117 Test: inspector/styles-source-offsets.html
1120 * css/CSSParser.cpp:
1121 (WebCore::CSSParser::CSSParser):
1122 (WebCore::CSSParser::setupParser):
1123 (WebCore::CSSParser::parseSheet):
1124 (WebCore::CSSParser::createStyleRule):
1125 (WebCore::CSSParser::updateLastSelectorLineAndPosition):
1126 (WebCore::CSSParser::markRuleBodyStart):
1127 (WebCore::CSSParser::markRuleBodyEnd):
1129 (WebCore::CSSParser::resetRuleBodyMarks):
1130 * inspector/InspectorCSSStore.cpp:
1131 (WebCore::InspectorCSSStore::InspectorCSSStore):
1132 (WebCore::InspectorCSSStore::reset):
1133 (WebCore::InspectorCSSStore::removeDocument):
1134 (WebCore::InspectorCSSStore::inspectorStyleSheet):
1135 (WebCore::InspectorCSSStore::getStartEndOffsets):
1136 (WebCore::InspectorCSSStore::getIndexInStyleRules):
1137 (WebCore::InspectorCSSStore::disabledStyleForId):
1138 (WebCore::InspectorCSSStore::styleForId):
1139 (WebCore::InspectorCSSStore::ruleForId):
1140 (WebCore::InspectorCSSStore::bindStyle):
1141 (WebCore::InspectorCSSStore::bindStyleSheet):
1142 (WebCore::InspectorCSSStore::bindRule):
1143 * inspector/InspectorCSSStore.h:
1144 * inspector/InspectorController.cpp:
1145 (WebCore::InspectorController::InspectorController):
1146 (WebCore::InspectorController::resourceForURL):
1147 * inspector/InspectorController.h:
1148 (WebCore::InspectorController::inspectorFrontend):
1149 * inspector/InspectorDOMAgent.cpp:
1150 (WebCore::InspectorDOMAgent::InspectorDOMAgent):
1151 (WebCore::InspectorDOMAgent::unbind):
1152 (WebCore::InspectorDOMAgent::getStyles):
1153 (WebCore::InspectorDOMAgent::getAllStyles):
1154 (WebCore::InspectorDOMAgent::buildArrayForCSSRules):
1155 (WebCore::InspectorDOMAgent::buildArrayForPseudoElements):
1156 (WebCore::InspectorDOMAgent::applyStyleText):
1157 (WebCore::InspectorDOMAgent::setStyleText):
1158 (WebCore::InspectorDOMAgent::setStyleProperty):
1159 (WebCore::InspectorDOMAgent::toggleStyleEnabled):
1160 (WebCore::InspectorDOMAgent::setRuleSelector):
1161 (WebCore::InspectorDOMAgent::addRule):
1162 (WebCore::InspectorDOMAgent::buildObjectForStyle):
1163 (WebCore::InspectorDOMAgent::buildArrayForDisabledStyleProperties):
1164 (WebCore::InspectorDOMAgent::buildObjectForStyleSheet):
1165 (WebCore::InspectorDOMAgent::buildObjectForRule):
1166 * inspector/InspectorDOMAgent.h:
1167 * inspector/front-end/DOMAgent.js:
1168 (WebInspector.CSSStyleDeclaration):
1170 2010-05-26 Xan Lopez <xlopez@igalia.com>
1172 Reviewed by Gustavo Noronha.
1174 [GTK] Add support for DOM events in the GObject DOM bindings
1175 https://bugs.webkit.org/show_bug.cgi?id=38844
1177 Use GObject-like names for the DOM event signals. Basically go
1178 from 'mousewheel' to 'mouse-wheel-event'.
1180 * bindings/scripts/CodeGeneratorGObject.pm:
1182 2010-05-26 Nikolas Zimmermann <nzimmermann@rim.com>
1184 Not reviewed. Sort Xcode project file.
1186 * WebCore.xcodeproj/project.pbxproj:
1188 2010-05-26 Xan Lopez <xlopez@igalia.com>
1190 Reviewed by Gustavo Noronha.
1192 [GTK] Add support for DOM events in the GObject DOM bindings
1193 https://bugs.webkit.org/show_bug.cgi?id=38844
1195 First step towards DOM events support. We create one signal per
1196 event supported in the DOM classes, and create a custom
1197 GObjectEventListener that will emit a GObject signal when an event
1198 is dispatched to the object. There is no event object at the
1199 moment (we just pass NULL), and no support for hooking into the
1203 * bindings/gobject/GObjectEventListener.cpp: Added.
1204 (WebCore::GObjectEventListener::handleEvent):
1205 (WebCore::GObjectEventListener::operator==):
1206 * bindings/gobject/GObjectEventListener.h: Added.
1207 (WebCore::GObjectEventListener::create):
1208 (WebCore::GObjectEventListener::cast):
1209 (WebCore::GObjectEventListener::GObjectEventListener):
1210 * bindings/scripts/CodeGeneratorGObject.pm:
1211 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
1213 (webkit_dom_test_callback_finalize):
1214 (webkit_dom_test_callback_class_init):
1215 (WebKit::wrapTestCallback):
1216 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
1218 (webkit_dom_test_interface_finalize):
1219 (webkit_dom_test_interface_class_init):
1220 (WebKit::wrapTestInterface):
1221 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
1223 (webkit_dom_test_obj_finalize):
1224 (webkit_dom_test_obj_class_init):
1225 (WebKit::wrapTestObj):
1226 * dom/EventListener.h:
1227 (WebCore::EventListener::):
1229 2010-05-26 Xan Lopez <xlopez@igalia.com>
1231 Reviewed by Gustavo Noronha.
1233 [GTK] GObject DOM bindings
1234 https://bugs.webkit.org/show_bug.cgi?id=33590
1236 We need to protect the body of some methods with #ifdefs, since
1237 the availability of the code they call into is decided at compile
1240 * bindings/scripts/CodeGeneratorGObject.pm:
1242 2010-05-26 Kent Tamura <tkent@chromium.org>
1244 Reviewed by Shinichiro Hamaji.
1246 Move date/time limit values to DateComponents.h from HTMLInputElement.cpp
1247 https://bugs.webkit.org/show_bug.cgi?id=39423
1249 The minimum and maximum values for date, datetime, datetime-local,
1250 month, time, and week types depend on the implementation of
1251 DateComponents. So move them to DateComponents.
1253 * html/DateComponents.h:
1254 * html/HTMLInputElement.cpp:
1255 (WebCore::HTMLInputElement::minimum):
1256 (WebCore::HTMLInputElement::maximum):
1258 2010-05-26 Csaba Osztrogonác <ossy@webkit.org>
1260 Reviewed by Simon Hausmann.
1262 Buildfix for build without ENABLE(RUBY) after r60201.
1264 * rendering/RenderBlock.cpp:
1265 (WebCore::canMergeContiguousAnonymousBlocks): Missing #if ENABLE(RUBY) guard added.
1267 2010-05-26 Nikolas Zimmermann <nzimmermann@rim.com>
1269 Not reviewed. Update test expectations for JS generator, when using run-webkit-tests. This has been forgotten.
1271 * bindings/scripts/test/JS/JSTestInterface.cpp:
1272 (WebCore::JSTestInterfaceConstructor::JSTestInterfaceConstructor):
1273 (WebCore::JSTestInterface::createPrototype):
1274 * bindings/scripts/test/JS/JSTestInterface.h:
1275 (WebCore::JSTestInterfacePrototype::JSTestInterfacePrototype):
1276 * bindings/scripts/test/JS/JSTestObj.cpp:
1277 (WebCore::JSTestObjConstructor::JSTestObjConstructor):
1278 (WebCore::JSTestObj::createPrototype):
1279 * bindings/scripts/test/JS/JSTestObj.h:
1280 (WebCore::JSTestObjPrototype::JSTestObjPrototype):
1282 2010-05-25 Philippe Normand <pnormand@igalia.com>
1284 Reviewed by Gustavo Noronha Silva.
1286 [GStreamer] Apple trailers not playing
1287 https://bugs.webkit.org/show_bug.cgi?id=37390
1289 Set the AppleTrailer User-Agent workaround after
1290 FrameLoader::addExtraFieldsToSubresourceRequest has been called
1291 because that method sets the global User-Agent.
1293 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1294 (webKitWebSrcStart):
1296 2010-05-25 Dumitru Daniliuc <dumi@chromium.org>
1298 Unreviewed, changing "fts2" to "fts3" in one location I missed in r60188.
1300 * storage/DatabaseAuthorizer.cpp:
1301 (WebCore::DatabaseAuthorizer::dropVTable):
1303 2010-05-25 Mark Rowe <mrowe@apple.com>
1307 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
1309 2010-05-25 Yuta Kitamura <yutak@chromium.org>
1311 Reviewed by Pavel Feldman.
1313 Web Inspector: Show HTTP status message sent from server in Resources tab.
1315 This patch obtains an HTTP status message of each resource and pass it to
1316 the front end of Web Inspector. The status message is shown in "Headers" tab in
1317 the detail view of that resource, along with the HTTP status code.
1319 Web Inspector does not respect HTTP status message
1320 https://bugs.webkit.org/show_bug.cgi?id=39595
1322 * inspector/InspectorResource.cpp:
1323 (WebCore::InspectorResource::updateResponse):
1324 (WebCore::InspectorResource::updateScriptObject):
1325 * inspector/InspectorResource.h:
1326 * inspector/front-end/Resource.js:
1327 (WebInspector.Resource.CompareByTransferSize):
1328 * inspector/front-end/ResourceView.js:
1329 (WebInspector.ResourceView.prototype._refreshHTTPInformation):
1330 * inspector/front-end/inspector.js:
1331 (WebInspector.updateResource):
1332 * inspector/front-end/utilities.js:
1333 (String.prototype.escapeHTML): Escape '"' so that we can escape messages
1334 that may occur inside HTML attributes.
1336 2010-05-24 David Hyatt <hyatt@apple.com>
1338 Reviewed by Dan Bernstein.
1340 https://bugs.webkit.org/show_bug.cgi?id=39615, implement basic support for -webkit-column-span.
1342 This patch adds support for -webkit-column-span elements that can span across all of the columns
1343 in a multi-column block. In this first stage, column span support is limited to only immediate
1344 children of the multi-column block, so no elements actually have to split across a span yet.
1346 Two new kinds of anonymous blocks have been added: anonymous columns blocks and anonymous column
1347 span blocks. When a span gets inserted into a multicol block, the block is split, with the
1348 column portions of the multicol getting wrapped in anonymous columns blocks and the spans getting
1349 wrapped in anonymous column span blocks. The multicol block then stops being multicol and lets
1350 the anonymous multicol blocks take over column layout.
1352 Many new tests added in fast/multicol/span.
1355 (WebCore::Node::diff):
1356 Changes to column span result in a detach/attach, since spanning elements don't typically have
1359 * rendering/RenderBlock.cpp:
1360 (WebCore::RenderBlock::styleDidChange):
1361 Make sure to inherit the appropriate new styles into the anonymous column and column span blocks.
1363 (WebCore::RenderBlock::addChildToAnonymousColumnBlocks):
1364 This method handles the insertion of new children into the block after it has had to wrap its
1365 children in anonymous column/column-span blocks.
1367 (WebCore::RenderBlock::splitAnonymousBlocksAroundChild):
1368 A helper method for splitting all anonymous blocks between beforeChild and this block so that
1369 a new element with an incompatible type can be inserted between them.
1371 (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks):
1372 This method does the initial split of a block into anonymous components. This happens the first
1373 time a column-span element gets inserted into the block.
1375 (WebCore::columnsBlockForSpanningElement):
1376 This function checks whether or not the column-span element is actually being inserted into a viable
1379 (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
1380 This is the original RenderBlock::addChild. It handles everything else just like it used to.
1382 (WebCore::RenderBlock::addChild):
1383 Patched to now call addChildToAnonymousColumnBlocks if the block has wrapped its current children
1384 in anonymous column/column-span blocks already.
1386 (WebCore::RenderBlock::moveAllChildrenTo):
1387 moveAllChildrenTo has been enhanced to support doing a full remove/append in the case where elements
1388 are shifting across layers. (This should arguably be the default behavior, but that can happen in
1391 (WebCore::RenderBlock::removeLeftoverAnonymousBlock):
1392 Patched to fix a bug when the leftover block is empty and to prevent anonymous column/column-span
1393 block from being coalesced with a parent if they are non-empty.
1395 (WebCore::canMergeContiguousAnonymousBlocks):
1396 Whether or not two contiguous anonymous blocks can merge after the removal of a child.
1398 (WebCore::RenderBlock::removeChild):
1399 removeChild has been patched to handle more cases of merging/deletion than it did before. It
1400 can now destroy empty anonymous block chains and can now merge two contiguous anonymous blocks
1401 that don't share the same childrenInline() setting (by putting one inside the other). It also
1402 makes sure to do full appends/moves/inserts in the cases where the affected blocks have layers.
1404 (WebCore::RenderBlock::fillSelectionGaps):
1405 Don't let the selection extend outside of a column-span.
1407 (WebCore::RenderBlock::setDesiredColumnCountAndWidth):
1408 Turn off multi-column layout on the outermost block if it has wrapped its children in anonymous
1409 column/column-span blocks.
1411 (WebCore::RenderBlock::createAnonymousBlockWithSameTypeAs):
1412 (WebCore::RenderBlock::createAnonymousColumnsBlock):
1413 (WebCore::RenderBlock::createAnonymousColumnSpanBlock):
1414 New helper functions for anonymous block creation.
1416 (WebCore::RenderBlock::renderName):
1417 Patched to dump anonymous column and column-span blocks so that they can be distinguished from
1418 regular anonymous blocks.
1419 * rendering/RenderBlock.h:
1420 * rendering/RenderObject.h:
1421 (WebCore::RenderObject::isAnonymousColumnsBlock):
1422 (WebCore::RenderObject::isAnonymousColumnSpanBlock):
1423 New helper functions for asking the type of an anonymous block.
1425 * rendering/style/RenderStyle.h:
1426 (WebCore::InheritedFlags::inheritColumnPropertiesFrom):
1427 A helper function to allow anonymous column blocks to easily inherit all column properties for
1430 2010-05-25 Dirk Pranke <dpranke@chromium.org>
1432 Reviewed by Dimitri Glazkov.
1434 Re-commit r58765 - it had been rolled out to see if it was causing
1435 a perf regression (in r59787), but that does not seem to have been
1438 Tests: fast/notifications/notifications-replace.html
1439 fast/notifications/notifications-rtl.html
1441 https://bugs.webkit.org/show_bug.cgi?id=39605
1443 * notifications/Notification.h:
1444 (WebCore::Notification::dir):
1445 (WebCore::Notification::setDir):
1446 (WebCore::Notification::replaceId):
1447 (WebCore::Notification::setReplaceId):
1448 * notifications/Notification.idl:
1450 2010-05-22 Jer Noble <jer.noble@apple.com>
1452 Reviewed by Adam Roben.
1454 Full screen doesn't work for video elements
1455 https://bugs.webkit.org/show_bug.cgi?id=39557
1456 rdar://problem/8011813
1458 Add fullscreen support for MediaPlayerPrivateVisualContext. A new class, MediaPlayerPrivateFullscreenWindow,
1459 provides the fullscreen hwnd and layer renderer. Any WKCACFLayer can be provided to MediaPlayerPrivateFullscreenWindow
1460 so future additional MediaPlayerPrivate implementations can use the fullscreen window.
1462 Minor additions have been made to the FloatSize and IntSize classes.
1464 MediaPlayerPrivateQuickTimeVisualContext now calls retrieveCurrentImage after creating a new
1465 videoLayer; this is an existing bug that was never really exposed before now.
1467 * WebCore.vcproj/WebCore.vcproj:
1468 * platform/graphics/FloatSize.h: Added aspectRatio() and scale(float).
1469 (WebCore::FloatSize::aspectRatio):
1470 (WebCore::FloatSize::scale):
1471 * platform/graphics/IntSize.h: Added aspectRatio().
1472 (WebCore::IntSize::aspectRatio):
1473 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp: Added.
1474 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h: Added.
1475 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Call retrieveCurrentImage() after creating the videoLayer.
1476 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::supportsFullscreen):
1477 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveCurrentImage):
1478 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::createLayerForMovie):
1479 * platform/graphics/win/WKCACFLayer.cpp:
1480 (WebCore::WKCACFLayer::WKCACFLayer):
1481 (WebCore::WKCACFLayer::removeFromSuperlayer):
1482 (WebCore::WKCACFLayer::setFrame):
1483 (WebCore::WKCACFLayer::internalSetNeedsDisplay):
1484 (WebCore::WKCACFLayer::setLayoutClient):
1485 (WebCore::WKCACFLayer::layoutSublayersProc):
1486 (WebCore::WKCACFLayer::layoutClient):
1487 (WebCore::WKCACFLayer::setNeedsLayout):
1488 * platform/graphics/win/WKCACFLayer.h: Add layout client class.
1489 (WebCore::WKCACFLayerLayoutClient::~WKCACFLayerLayoutClient):
1490 (WebCore::WKCACFLayer::frame): Added back frame()/setFrame().
1491 * platform/graphics/win/WebTiledLayer.cpp:
1492 (WebCore::WebTiledLayer::setFrame): Implamented setFrame() in subclass of WKCACFLayer
1493 * platform/graphics/win/WebTiledLayer.h:
1494 * platform/graphics/win/WebTiledLayer.cpp: Added setFrame() overriding WKCACFLayer's implementation
1495 (WebCore::WebTiledLayer::setFrame):
1496 * platform/graphics/win/WebTiledLayer.h:
1499 2010-05-25 Dumitru Daniliuc <dumi@chromium.org>
1501 Reviewed by Brady Eidson.
1503 Allow FTS3 functions.
1504 https://bugs.webkit.org/show_bug.cgi?id=38003
1506 * storage/DatabaseAuthorizer.cpp:
1507 (WebCore::DatabaseAuthorizer::addWhitelistedFunctions):
1508 (WebCore::DatabaseAuthorizer::createVTable):
1510 2010-05-25 Anders Carlsson <andersca@apple.com>
1512 Reviewed by Sam Weinig.
1514 Get rid of PluginDatabaseClient
1515 https://bugs.webkit.org/show_bug.cgi?id=39685
1517 PluginDatabaseClient isn't used anywhere so just remove it.
1520 * plugins/PluginDatabase.cpp:
1521 (WebCore::PluginDatabase::PluginDatabase):
1522 (WebCore::PluginDatabase::refresh):
1523 * plugins/PluginDatabase.h:
1524 * plugins/PluginDatabaseClient.h: Removed.
1526 2010-05-25 Alexey Proskuryakov <ap@apple.com>
1528 Reviewed by Darin Adler.
1530 https://bugs.webkit.org/show_bug.cgi?id=18595
1531 REGRESSION (r20766): Setting display:none on an iframe causes the ownerDocument to freeze
1533 Test: fast/events/frame-detached-in-mousedown.html
1535 * page/EventHandler.h: Added a boolean tracking whether EventHandler needs to reset capturing
1536 node on mouse up. It's only done for nodes that hold subframes - elements that capture events
1537 are responsible for resetting the state.
1539 * page/EventHandler.cpp:
1540 (WebCore::EventHandler::EventHandler): Don't initialize m_capturingMouseEventsNode, it's a
1541 RefPtr and is initialized automatically.
1542 (WebCore::EventHandler::handleMousePressEvent): Remember that EventHandler should reset
1543 capturing node on its own.
1544 (WebCore::EventHandler::handleMouseDoubleClickEvent): The code here looked like it was copied
1545 from the below in r21156. Copied correct code instead.
1546 (WebCore::EventHandler::handleMouseReleaseEvent): We only clear the capturing node when it
1547 holds a subframe, but the frame may be already detached by the time mouse up is handled, so the
1548 check was wrong - and return code of passMouseReleaseEventToSubframe() is obviously irrelevant.
1549 (WebCore::EventHandler::setCapturingMouseEventsNode): Remember that EventHandler should not
1550 reset capturing node on its own.
1552 2010-05-25 Kevin Ollivier <kevino@theolliviers.com>
1554 [wx] Build fix for missing symbol.
1558 2010-05-25 Darin Adler <darin@apple.com>
1561 (WebCore::Element::getIDAttribute): Added comments about problems with this function.
1563 2010-05-25 Leandro Pereira <leandro@profusion.mobi>
1565 Reviewed by Gustavo Noronha Silva.
1568 http://webkit.org/b/39598
1572 2010-05-25 Enrica Casucci <enrica@apple.com>
1574 Reviewed by Darin Adler.
1576 REGRESSION(51522): typing at the end of a line in designMode documents is *very* slow.
1577 https://bugs.webkit.org/show_bug.cgi?id=36037
1578 <rdar://problem/8022887>
1580 The performance regression was traced to r51522 but this is not entirely true. That revision introduced, among other things,
1581 additional checks in the method isCandidate of both Position and PositionIterator classes to support scenarios of mixed editability
1582 that were not allowed before. This change uncovered an underlying issue with the decrement method of PositionIterator, that in some
1583 cases would iterate through every position as offset in a block before moving to the last child in the block.
1584 This was exactly the case of the attached test case, where, trying to check if the caret was placed at the end of a block, we were examining
1585 every position in the block before considering the last true position in the block.
1586 The performance was linear with the number of child nodes in the block, instead of constant.
1588 * dom/PositionIterator.cpp:
1589 (WebCore::PositionIterator::decrement):
1591 2010-05-25 Alexey Proskuryakov <ap@apple.com>
1593 Reviewed by Darin Adler.
1595 https://bugs.webkit.org/show_bug.cgi?id=39621
1596 <rdar://problem/8009738> Extreme memory growth on DOM Hanoi test
1598 The largest cause of memory growth on this test were autoreleased DOMNode objects created
1599 to make webView:formStateDidChangeForNode: delegate calls.
1601 * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
1602 Don't call notifyFormStateChanged() - since the element starts with refcount 0, it's not
1603 safe to call functions that are likely to create temporary wrappers (wrapper destructor
1604 would bring refcount back to 0, and destroy HTMLTextAreaElement from within its constructor).
1606 2010-05-25 Kent Tamura <tkent@chromium.org>
1608 Reviewed by Dimitri Glazkov.
1610 [DRT/Chromium] Enable 3D_CANVAS, FILTERS, METER_TAG and PROGRESS_TAG
1611 https://bugs.webkit.org/show_bug.cgi?id=39652
1613 * rendering/RenderTheme.cpp:
1614 (WebCore::RenderTheme::paintMeter): Fix narrowPrecisionToFloat() usage.
1616 2010-05-25 Darin Adler <darin@apple.com>
1618 Sort ".exp" files with the sort tool.
1619 This makes later merging easier.
1621 These Mac-specific files should probably move into a subdirectory
1624 * WebCore.Inspector.exp: Sorted.
1625 * WebCore.PluginHostProcess.exp: Removed blank line.
1626 * WebCore.VideoProxy.exp: Sorted.
1627 * WebCore.base.exp: Ditto.
1629 2010-05-25 Vangelis Kokkevis <vangelis@chromium.org>
1631 Reviewed by Darin Fisher.
1633 Removing the persistent GraphicsContext from LayerChromium to save on
1634 memory and simplify code. Layers now create a temporary context, draw into
1635 it, update the GL texture and discard the context.
1636 https://bugs.webkit.org/show_bug.cgi?id=39640
1638 * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1639 (WebCore::GraphicsLayerChromium::updateLayerDrawsContent):
1640 * platform/graphics/chromium/LayerChromium.cpp:
1641 (WebCore::LayerChromium::LayerChromium):
1642 (WebCore::LayerChromium::~LayerChromium):
1643 (WebCore::LayerChromium::setLayerRenderer):
1644 (WebCore::LayerChromium::updateTextureContents):
1645 (WebCore::LayerChromium::setContents):
1646 (WebCore::LayerChromium::setBounds):
1647 (WebCore::LayerChromium::setNeedsDisplay):
1648 * platform/graphics/chromium/LayerChromium.h:
1649 * platform/graphics/chromium/LayerRendererChromium.cpp:
1650 (WebCore::LayerRendererChromium::~LayerRendererChromium):
1651 (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
1652 (WebCore::LayerRendererChromium::drawLayers):
1653 (WebCore::LayerRendererChromium::assignTextureForLayer):
1654 (WebCore::LayerRendererChromium::compositeLayersRecursive):
1655 * platform/graphics/chromium/LayerRendererChromium.h:
1656 (WebCore::LayerRendererChromium::rootLayerGraphicsContext):
1658 2010-05-24 Kenneth Rohde Christiansen <kenneth@webkit.org>
1660 Reviewed by Simon Hausmann.
1662 [Qt] Make text filling work together with text stroke.
1664 When the text has stroke a new QPen was set, overriding the pen
1665 set for text filling. This patch fixes that by storing the two
1666 pens and using where appropriate.
1668 * platform/graphics/qt/FontQt.cpp:
1669 (WebCore::Font::drawComplexText):
1671 2010-05-17 Antonio Gomes <tonikitoo@webkit.org>
1673 Reviewed by Darin Adler.
1675 Add an optional "starting node' parameter to scrollRecursively and scrollOverflow of EventHandler
1676 https://bugs.webkit.org/show_bug.cgi?id=39217
1678 It would be usefull if scrollOverflow and scrollRecursively methods of EventHandler
1679 could receive a parameter to specify where to start scrolling from. Currently they
1680 start scrolling from either the current focused node or the node where mouse last
1681 pressed on. Patch proposes an aditional starting point as an optional parameter.
1682 Since it is optional, all call sites can remain as are, and if a Null node is passed
1683 in, both methods work as previously.
1685 * page/EventHandler.cpp:
1686 (WebCore::EventHandler::scrollOverflow):
1687 (WebCore::EventHandler::scrollRecursively):
1688 * page/EventHandler.h:
1690 2010-05-25 Yury Semikhatsky <yurys@chromium.org>
1692 Reviewed by Timothy Hatcher.
1694 Web Inspector: localize heap graph strings.
1696 https://bugs.webkit.org/show_bug.cgi?id=39674
1698 * English.lproj/localizedStrings.js:
1700 2010-05-25 Adam Barth <abarth@webkit.org>
1702 Reviewed by Eric Seidel.
1704 Switch HTML parsing benchmark to use document.write instead of innerHTML
1705 https://bugs.webkit.org/show_bug.cgi?id=39661
1707 We'd like to exercise the main parsing pipeline instead of the fragment
1710 * benchmarks/parser/html-parser.html:
1712 2010-05-25 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
1714 Reviewed by Laszlo Gombos.
1716 [Qt] Running with accelerated compositing enabled sometimes result in a crash
1717 https://bugs.webkit.org/show_bug.cgi?id=39609
1719 Check if we have a scene before applying the workaround for
1720 the QGraphicsScene bug where opacity change doesn't always have
1723 * platform/graphics/qt/GraphicsLayerQt.cpp:
1724 (WebCore::OpacityAnimationQt::applyFrame):
1726 2010-05-25 Yury Semikhatsky <yurys@chromium.org>
1728 Unreviewed. Fix Chromium Mac Release build.
1730 * bindings/v8/ScriptDebugServer.cpp:
1732 2010-05-24 Yury Semikhatsky <yurys@chromium.org>
1734 Reviewed by Pavel Feldman.
1736 ScriptDebugServer is now implemented as DebugEventListener which means it doesn't
1737 depend on v8 debugging protocol, instead it uses ExecState to collect debugging
1738 info and pass it to the listeners.
1740 New implementation of ScriptDebugServer uses methods provided by client to dispatch
1741 its messages while JS is paused(previously the messages was dispatched in a callback
1742 passed to v8 along with DebugEventHandler).
1744 https://bugs.webkit.org/show_bug.cgi?id=39594
1746 * bindings/js/ScriptDebugServer.cpp:
1747 (WebCore::ScriptDebugServer::dispatchDidPause):
1748 (WebCore::ScriptDebugServer::dispatchDidContinue):
1749 (WebCore::ScriptDebugServer::dispatchFunctionToListeners): Changed method signature to allow
1750 invocation of ScriptDebugListener methods that have non-empty argument list.
1751 (WebCore::ScriptDebugServer::pauseIfNeeded):
1752 * bindings/js/ScriptDebugServer.h:
1753 * bindings/v8/ScriptDebugServer.cpp:
1754 (WebCore::retrieveFrame):
1755 (WebCore::ScriptDebugServer::ScriptDebugServer):
1756 (WebCore::ScriptDebugServer::addListener):
1757 (WebCore::ScriptDebugServer::removeListener): Execution is resumed(nested message loop is terminated) when
1758 corresponding debugger window closes.
1759 (WebCore::ScriptDebugServer::clearBreakpoints):
1760 (WebCore::ScriptDebugServer::pauseOnExceptionsState):
1761 (WebCore::ScriptDebugServer::setPauseOnExceptionsState):
1762 (WebCore::ScriptDebugServer::continueProgram):
1763 (WebCore::ScriptDebugServer::stepIntoStatement):
1764 (WebCore::ScriptDebugServer::stepOverStatement):
1765 (WebCore::ScriptDebugServer::stepOutOfFunction):
1766 (WebCore::ScriptDebugServer::v8DebugEventCallback):
1767 (WebCore::ScriptDebugServer::handleV8DebugEvent):
1768 (WebCore::ScriptDebugServer::didResume):
1769 * bindings/v8/ScriptDebugServer.h:
1770 (WebCore::ScriptDebugServer::ClientMessageLoop::~ClientMessageLoop):
1771 (WebCore::ScriptDebugServer::setClientMessageLoop):
1772 * inspector/InspectorController.cpp:
1773 (WebCore::InspectorController::didPause):
1774 * inspector/InspectorController.h:
1775 * inspector/ScriptDebugListener.h: Changed didPause signature to explicitly pass ScriptState
1776 where execution is paused.
1778 2010-05-25 Adam Barth <abarth@webkit.org>
1780 Reviewed by Eric Seidel.
1782 Clear attributes for each tag in the HTML5 parser
1783 https://bugs.webkit.org/show_bug.cgi?id=39660
1785 Yes, I did screw this up.
1787 * html/HTML5Token.h:
1788 (WebCore::HTML5Token::beginStartTag):
1789 (WebCore::HTML5Token::beginEndTag):
1791 2010-05-25 Anders Bakken <agbakken@gmail.com>
1793 Reviewed by Darin Adler.
1795 Remove warning for GCC 4.4.3
1797 GCC suggest parentheses around && within ||
1800 (WebCore::Element::recalcStyle):
1802 2010-05-25 Xan Lopez <xlopez@igalia.com>
1804 Fix the GTK+ build, PluginInfoStore was removed.
1808 2010-05-25 Ada Chan <adachan@apple.com>
1810 Reviewed by Steve Falkenburg.
1812 Add a base class for DOMTimer called SuspendableTimer which captures just the
1813 basic functionality of TimerBase and ActiveDOMObject combined. It does not
1814 contain functionality specific to scripting timers.
1816 SuspendableTimer is used in fixing https://bugs.webkit.org/show_bug.cgi?id=39651
1823 * WebCore.vcproj/WebCore.vcproj:
1824 * WebCore.xcodeproj/project.pbxproj:
1825 * page/DOMTimer.cpp:
1826 (WebCore::DOMTimer::DOMTimer):
1827 (WebCore::DOMTimer::contextDestroyed):
1828 (WebCore::DOMTimer::stop):
1830 * page/SuspendableTimer.cpp: Added.
1831 (WebCore::SuspendableTimer::SuspendableTimer):
1832 (WebCore::SuspendableTimer::~SuspendableTimer):
1833 (WebCore::SuspendableTimer::hasPendingActivity):
1834 (WebCore::SuspendableTimer::stop):
1835 (WebCore::SuspendableTimer::suspend):
1836 (WebCore::SuspendableTimer::resume):
1837 (WebCore::SuspendableTimer::canSuspend):
1838 * page/SuspendableTimer.h: Added.
1840 2010-05-25 Justin Schuh <jschuh@chromium.org>
1842 Reviewed by Nate Chapin.
1844 Remove custom bindings for Element.SetAttribute*
1845 https://bugs.webkit.org/show_bug.cgi?id=39604
1847 Custom bindings are no longer needed because origin checks were moved
1848 out of the bindings by: http://trac.webkit.org/changeset/59866
1850 Behavior isn't changed and is covered by existing tests.
1852 * bindings/js/JSElementCustom.cpp:
1853 * bindings/v8/custom/V8ElementCustom.cpp:
1856 2010-05-25 Yury Semikhatsky <yurys@chromium.org>
1858 Reviewed by Pavel Feldman.
1860 Add memory graph to Timeline overview pane.
1862 https://bugs.webkit.org/show_bug.cgi?id=37879
1864 * inspector/front-end/Drawer.js:
1865 (WebInspector.Drawer):
1866 (WebInspector.Drawer.prototype.show.animationFinished):
1867 (WebInspector.Drawer.prototype.show):
1868 (WebInspector.Drawer.prototype.hide):
1869 (WebInspector.Drawer.prototype.set currentPanelCounters):
1870 * inspector/front-end/Panel.js:
1871 * inspector/front-end/TimelineOverviewPane.js:
1872 (WebInspector.TimelineOverviewPane):
1873 (WebInspector.TimelineOverviewPane.prototype.showTimelines):
1874 (WebInspector.TimelineOverviewPane.prototype.showMemoryGraph):
1875 (WebInspector.TimelineOverviewPane.prototype._forAllRecords):
1876 (WebInspector.TimelineOverviewPane.prototype.update):
1877 (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth):
1878 (WebInspector.TimelineOverviewPane.prototype._endWindowDragging):
1879 (WebInspector.TimelineOverviewPane.prototype._createTimelineCategoryStatusBarCheckbox):
1880 (WebInspector.HeapGraph):
1881 (WebInspector.HeapGraph.prototype.get element):
1882 (WebInspector.HeapGraph.prototype.get visible):
1883 (WebInspector.HeapGraph.prototype.show):
1884 (WebInspector.HeapGraph.prototype.hide):
1885 (WebInspector.HeapGraph.prototype.setSize):
1886 (WebInspector.HeapGraph.prototype.update):
1887 (WebInspector.HeapGraph.prototype._clear):
1888 (WebInspector.HeapGraph.prototype._drawScale):
1889 * inspector/front-end/TimelinePanel.js:
1890 (WebInspector.TimelinePanel):
1891 (WebInspector.TimelinePanel.prototype.toolbarItemClass._createTopPane):
1892 (WebInspector.TimelinePanel.prototype.get statusBarItems):
1893 (WebInspector.TimelinePanel.prototype._timelinesOverviewItemSelected):
1894 (WebInspector.TimelinePanel.prototype._memoryOverviewItemSelected):
1895 (WebInspector.TimelinePanel.prototype.setSidebarWidth):
1896 (WebInspector.TimelinePanel.prototype.show):
1897 (WebInspector.TimelinePanel.prototype.hide):
1898 * inspector/front-end/inspector.css:
1900 (#timeline-overview-sidebar):
1901 (.timeline-category-statusbar-item):
1902 (.timeline-category-statusbar-item .timeline-category-checkbox):
1903 (.timeline-category-statusbar-item .timeline-category-checkbox:checked):
1904 (.timeline-category-statusbar-item.timeline-category-loading .timeline-category-checkbox):
1905 (.timeline-category-statusbar-item.timeline-category-scripting .timeline-category-checkbox):
1906 (.timeline-category-statusbar-item.timeline-category-rendering .timeline-category-checkbox):
1907 (#timeline-overview-memory):
1908 (.timeline-records-counter):
1909 (#main-status-bar > .timeline-records-counter):
1910 (#counters > .timeline-records-counter):
1911 * inspector/front-end/inspector.html:
1912 * inspector/front-end/utilities.js:
1915 2010-05-25 Adam Barth <abarth@webkit.org>
1917 Unreviewed. Fix typo pointed out by Maciej.
1919 * html/HTML5Lexer.cpp:
1920 (WebCore::HTMLNames::unconsumeCharacters):
1921 (WebCore::HTML5Lexer::consumeEntity):
1923 2010-05-25 Adam Barth <abarth@webkit.org>
1925 Reviewed by Eric Seidel.
1927 Fix <noembed> and <plaintext> content models
1928 https://bugs.webkit.org/show_bug.cgi?id=39653
1930 PLAINTEXTState is my favorite lexer state. :)
1932 * html/HTML5TreeBuilder.cpp:
1933 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
1935 2010-05-24 Adam Barth <abarth@webkit.org>
1937 Reviewed by Eric Seidel.
1939 First cut at HTML5 entities
1940 https://bugs.webkit.org/show_bug.cgi?id=39649
1942 There's still a bunch more work to do to get our entity parsing fully
1943 up to spec. This patch contains the bulk of the implementation
1946 The basics are covered by the existing html5lib tests. I'll add more
1947 detailed tests in a followup patch.
1949 * html/HTML5Lexer.cpp:
1950 (WebCore::HTMLNames::legalEntityFor):
1951 (WebCore::HTMLNames::isHexDigit):
1952 (WebCore::HTMLNames::isAlphaNumeric):
1953 (WebCore::HTMLNames::uncomsumeCharacters):
1954 (WebCore::HTML5Lexer::consumeEntity):
1955 (WebCore::HTML5Lexer::nextToken):
1956 (WebCore::HTML5Lexer::haveBufferedCharacterToken):
1957 * html/HTML5Lexer.h:
1958 (WebCore::HTML5Lexer::):
1959 * html/HTML5Tokenizer.cpp:
1960 (WebCore::HTML5Tokenizer::write):
1962 2010-05-24 Tasuku Suzuki <tasuku.suzuki@nokia.com>
1964 Reviewed by Kenneth Rohde Christiansen.
1966 [Qt] Fix compilation with QT_NO_TEMPORARYFILE
1967 https://bugs.webkit.org/show_bug.cgi?id=38324
1969 * platform/qt/FileSystemQt.cpp:
1970 (WebCore::openTemporaryFile):
1972 2010-05-24 Andrey Kosyakov <caseq@chromium.org>
1974 Reviewed by Yury Semikhatsky.
1976 Fixed handling of bare '/' and '?' at console prompt.
1977 https://bugs.webkit.org/show_bug.cgi?id=39585
1979 * inspector/front-end/inspector.js:
1980 (WebInspector.documentKeyDown):
1982 2010-05-24 Andreas Kling <andreas.kling@nokia.com>
1984 Reviewed by Sam Weinig.
1986 The 'prototype' property on generated Web IDL interfaces should be { DontDelete | ReadOnly }.
1989 http://www.w3.org/TR/WebIDL/#interface-object
1991 https://bugs.webkit.org/show_bug.cgi?id=39436
1993 Test: fast/dom/prototype-property.html
1995 * bindings/scripts/CodeGeneratorJS.pm:
1997 2010-05-24 Eric Seidel <eric@webkit.org>
1999 Reviewed by Adam Barth.
2001 Add RCDATA and RAWTEXT suport to the HTML5 parser
2002 https://bugs.webkit.org/show_bug.cgi?id=39642
2004 Adam Barth wrote half of this patch.
2006 * html/HTML5TreeBuilder.cpp:
2007 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
2009 2010-05-24 Tony Chang <tony@chromium.org>
2011 Not reviewed, build fix.
2013 Fix the chromium compile due to pageZoomFactor refactoring.
2015 * page/EventHandler.cpp:
2016 (WebCore::pageZoomFactor):
2018 2010-05-24 Jer Noble <jer.noble@apple.com>
2020 Reviewed by Eric Carlson.
2022 HTML5 <video> tag performance worse than Flash
2023 https://bugs.webkit.org/show_bug.cgi?id=39577
2024 rdar://problem/7982458
2026 Added attachments() back to QTPixelBuffer, as they are necessary for CAImageQueue.
2028 WKCACFLayer contents()/setContents() now return/take a CFTypeRef instead of a CGImageRef, which allows
2029 a CAImageQueueRef to be set as a layer's contents.
2031 WKCAImageQueue is a simple C++ wrapper around the WebKitSystemInterface CAImageQueue functions.
2033 MediaPlayerPrivateQuickTimeVisualContext will now use a CAImageQueue to display movie frames if
2034 certain prerequisites are met (QuartzCore.dll and CoreVideo.dll version numbers must meet a certain
2035 threshold defined in MediaPlayerPrivateQuickTimeVisualContext.cpp).
2037 * WebCore.vcproj/WebCore.vcproj:
2038 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
2039 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
2040 * platform/graphics/win/QTPixelBuffer.cpp:
2041 * platform/graphics/win/QTPixelBuffer.h:
2042 * platform/graphics/win/WKCACFLayer.cpp:
2043 * platform/graphics/win/WKCACFLayer.h:
2044 * platform/graphics/win/WKCAImageQueue.cpp: Added.
2045 * platform/graphics/win/WKCAImageQueue.h: Added.
2047 2010-05-24 Adam Barth <abarth@webkit.org>
2049 Reviewed by Eric Seidel.
2051 Teach the HTML5 parser how to lex escaped script data
2052 https://bugs.webkit.org/show_bug.cgi?id=39630
2054 * html/HTML5Lexer.cpp:
2055 (WebCore::HTMLNames::vectorEqualsString):
2056 (WebCore::HTML5Lexer::nextToken):
2057 (WebCore::HTML5Lexer::temporaryBufferIs):
2058 (WebCore::HTML5Lexer::isAppropriateEndTag):
2059 (WebCore::HTML5Lexer::maybeFlushBufferedEndTag):
2060 (WebCore::HTML5Lexer::flushBufferedEndTag):
2061 * html/HTML5Lexer.h:
2063 2010-05-24 Eric Seidel <eric@webkit.org>
2065 Unreviewed. Trick MSVC into ignoring our unused code for the moment.
2067 Prepare HTML5TreeBuilder for addition of new HTML5 parser code
2068 https://bugs.webkit.org/show_bug.cgi?id=39623
2070 * html/HTML5TreeBuilder.cpp:
2071 (WebCore::HTML5TreeBuilder::constructTreeFromToken):
2073 2010-05-24 Darin Adler <darin@apple.com>
2075 Fix build on platforms with touch code enabled.
2077 * page/EventHandler.cpp:
2078 (WebCore::pageZoomFactor): Added.
2079 (WebCore::EventHandler::handleTouchEvent): Use pageZoomFactor.
2081 2010-05-24 Darin Adler <darin@apple.com>
2083 Reviewed by Eric Seidel.
2085 Move view-related functions from Frame to FrameView
2086 https://bugs.webkit.org/show_bug.cgi?id=39366
2088 Refactoring only so adds no new tests.
2090 * WebCore.base.exp: Updated.
2092 * css/CSSStyleSelector.cpp:
2093 (WebCore::CSSStyleSelector::styleForDocument): Call zoom factor function
2095 (WebCore::CSSStyleSelector::applyProperty): Ditto.
2096 (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): Ditto.
2098 (WebCore::Document::elementFromPoint): Ditto.
2099 (WebCore::Document::caretRangeFromPoint): Ditto.
2100 * dom/MouseRelatedEvent.cpp:
2101 (WebCore::contentsX): Ditto.
2102 (WebCore::contentsY): Ditto.
2103 (WebCore::pageZoomFactor): Added helper function.
2104 (WebCore::MouseRelatedEvent::computePageLocation): Use helper.
2105 (WebCore::MouseRelatedEvent::receivedTarget): Ditto.
2107 (WebCore::Node::dispatchMouseEvent): Call zoom factor function on FrameView.
2108 (WebCore::Node::dispatchWheelEvent): Ditto.
2110 (WebCore::contentsX): Call zoom factor function on FrameView.
2111 (WebCore::contentsY): Ditto.
2112 * html/HTMLBodyElement.cpp:
2113 (WebCore::adjustForZoom): Ditto.
2114 (WebCore::HTMLBodyElement::setScrollLeft): Ditto.
2115 (WebCore::HTMLBodyElement::setScrollTop): Ditto.
2116 * html/HTMLImageElement.cpp:
2117 (WebCore::HTMLImageElement::width): Ditto.
2118 (WebCore::HTMLImageElement::height): Ditto.
2119 * loader/ImageDocument.cpp:
2120 (WebCore::pageZoomFactor): Added helper function.
2121 (WebCore::ImageTokenizer::finish): Use helper function
2122 (WebCore::ImageDocument::scale): Ditto.
2123 (WebCore::ImageDocument::resizeImageToFit): Ditto.
2124 (WebCore::ImageDocument::imageChanged): Ditto.
2125 (WebCore::ImageDocument::restoreImageSize): Ditto.
2126 (WebCore::ImageDocument::imageFitsInWindow): Ditto.
2127 * page/DOMWindow.cpp:
2128 (WebCore::DOMWindow::innerHeight): Ditto.
2129 (WebCore::DOMWindow::innerWidth): Ditto.
2130 (WebCore::DOMWindow::scrollX): Ditto.
2131 (WebCore::DOMWindow::scrollY): Ditto.
2132 (WebCore::DOMWindow::scrollTo): Ditto.
2133 * page/DragController.cpp:
2134 (WebCore::elementUnderMouse): Ditto.
2137 (WebCore::Frame::Frame): Removed code to initialize m_zoomFactor.
2138 * page/Frame.h: Moved functions to FrameView. Moved all #if to the left
2139 margin to make the style consistent. Removed empty function
2140 removeEditingStyleFromBodyElement.
2142 * page/FrameView.cpp:
2143 (WebCore::parentZoomFactor): Added helper function for constructor.
2144 (WebCore::FrameView::FrameView): Added initialization of m_zoomFactor.
2145 (WebCore::FrameView::shouldApplyTextZoom): Moved this here from Frame.
2146 (WebCore::FrameView::shouldApplyPageZoom): Ditto.
2147 (WebCore::FrameView::setZoomFactor): Ditto.
2149 * page/FrameView.h: Added members moved here from Frame.
2151 * rendering/RenderView.cpp:
2152 (WebCore::RenderView::zoomFactor): Call FrameView instead of Frame.
2153 * svg/SVGSVGElement.cpp:
2154 (WebCore::SVGSVGElement::currentScale): Ditto.
2155 (WebCore::SVGSVGElement::setCurrentScale): Ditto.
2157 2010-05-24 Jer Noble <jer.noble@apple.com>
2159 No review; build fix only.
2161 Roll-out changes r60094, 60096-60097.
2163 * WebCore.vcproj/WebCore.vcproj:
2164 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
2165 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load):
2166 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveCurrentImage):
2167 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::destroyLayerForMovie):
2168 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
2169 * platform/graphics/win/QTPixelBuffer.cpp:
2170 * platform/graphics/win/QTPixelBuffer.h:
2171 * platform/graphics/win/WKCACFLayer.cpp:
2172 (WebCore::WKCACFLayer::printLayer):
2173 * platform/graphics/win/WKCACFLayer.h:
2174 (WebCore::WKCACFLayer::setContents):
2175 (WebCore::WKCACFLayer::contents):
2176 (WebCore::WKCACFLayer::speed):
2177 (WebCore::WKCACFLayer::timeOffset):
2178 * platform/graphics/win/WKCAImageQueue.cpp: Removed.
2179 * platform/graphics/win/WKCAImageQueue.h: Removed.
2181 2010-05-24 Eric Seidel <eric@webkit.org>
2183 Unreviewed. Add wtf/UnusedParam.h include to make Chromium happy.
2185 Chromium does not use a prefix header in order to support
2186 distcc3. Other ports all do. The real fix is to remove
2187 wtf/UnusedParam.h from the prefix header.
2189 * html/HTML5TreeBuilder.cpp:
2191 2010-05-24 Jer Noble <jer.noble@apple.com>
2193 No review; build fix only.
2195 Second half of previous build fix, in which I add the include in the correct place.
2197 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
2199 2010-05-24 Jer Noble <jer.noble@apple.com>
2201 No review; build fix only.
2203 Include WKCAImageQueue.h outside the ACCELERATED_COMPOSITING check.
2205 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
2207 2010-05-24 Eric Seidel <eric@webkit.org>
2209 Reviewed by Adam Barth.
2211 Prepare HTML5TreeBuilder for addition of new HTML5 parser code
2212 https://bugs.webkit.org/show_bug.cgi?id=39623
2214 Before we start transcribing the parser, we need a place to put it.
2216 This also cleans up HTML5 token to not convert comment and character
2217 data into AtomicStrings (which makes no sense).
2219 No functionality change, so no new tests.
2221 * html/HTML5Token.h:
2222 (WebCore::HTML5Token::beginStartTag):
2223 (WebCore::HTML5Token::beginEndTag):
2224 (WebCore::HTML5Token::beginCharacter):
2225 (WebCore::HTML5Token::beginComment):
2226 (WebCore::HTML5Token::name):
2227 (WebCore::HTML5Token::adoptDataAsStringImpl):
2228 (WebCore::HTML5Token::characters):
2229 (WebCore::HTML5Token::commentData):
2230 (WebCore::HTML5Token::clearData):
2231 * html/HTML5TreeBuilder.cpp:
2232 (WebCore::convertToOldStyle):
2233 (WebCore::HTML5TreeBuilder::constructTreeFromToken):
2234 (WebCore::HTML5TreeBuilder::processToken):
2235 * html/HTML5TreeBuilder.h:
2237 2010-05-23 Jer Noble <jer.noble@apple.com>
2239 Reviewed by Eric Carlson.
2241 HTML5 <video> tag performance worse than Flash
2242 https://bugs.webkit.org/show_bug.cgi?id=39577
2243 rdar://problem/7982458
2245 Added attachments() back to QTPixelBuffer, as they are necessary for CAImageQueue.
2247 WKCACFLayer contents()/setContents() now return/take a CFTypeRef instead of a CGImageRef, which allows
2248 a CAImageQueueRef to be set as a layer's contents.
2250 WKCAImageQueue is a simple C++ wrapper around the WebKitSystemInterface CAImageQueue functions.
2252 MediaPlayerPrivateQuickTimeVisualContext will now use a CAImageQueue to display movie frames if
2253 certain prerequisites are met (QuartzCore.dll and CoreVideo.dll version numbers must meet a certain
2254 threshold defined in MediaPlayerPrivateQuickTimeVisualContext.cpp).
2256 * WebCore.vcproj/WebCore.vcproj:
2257 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
2258 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
2259 * platform/graphics/win/QTPixelBuffer.cpp:
2260 * platform/graphics/win/QTPixelBuffer.h:
2261 * platform/graphics/win/WKCACFLayer.cpp:
2262 * platform/graphics/win/WKCACFLayer.h:
2263 * platform/graphics/win/WKCAImageQueue.cpp: Added.
2264 * platform/graphics/win/WKCAImageQueue.h: Added.
2266 2010-05-24 Brady Eidson <beidson@apple.com>
2268 Reviewed by Darin Adler.
2270 Database origins aren't populated at launch (missing db in prefs sheet, possible other symptoms)
2271 <rdar://problem/8013233> and https://bugs.webkit.org/show_bug.cgi?id=39486
2273 Currently, a Tracker needs to know it's path before origins are populated. Testing databases and
2274 related features is made very difficult with this regression, so instead of changing things in a
2275 complicated way to make this not the case, I've added an "initialize Tracker with this path" function
2276 that calls the DatabaseTracker constructor with the initial path.
2278 I checked the other platforms besides Mac and Win, and none of them seem to perform the
2279 "initialize databases if necessary" step in their init routines, so this change shouldn't effect them.
2281 No new tests. (API specific layout test in DRT is forthcoming)
2285 * storage/DatabaseTracker.cpp:
2286 (WebCore::DatabaseTracker::initializeTracker): Added to create the tracker with its initial path.
2287 (WebCore::DatabaseTracker::tracker): Move the static tracker out so tracker() and initializeTracker()
2288 can share it. Add a fallback to not change behavior of platforms that don't call the new
2289 "initializeTracker()" method.
2290 (WebCore::DatabaseTracker::DatabaseTracker): Changed to take the initial path as an argument.
2291 * storage/DatabaseTracker.h:
2293 * storage/chromium/DatabaseTrackerChromium.cpp:
2294 (WebCore::DatabaseTracker::tracker): Adapt to new c'tor.
2295 (WebCore::DatabaseTracker::DatabaseTracker): Ditto.
2297 2010-05-24 Adam Barth <abarth@webkit.org>
2299 Reviewed by Eric Seidel.
2301 Teach the HTML5 parser to lex DOCTYPEs
2302 https://bugs.webkit.org/show_bug.cgi?id=39571
2304 * html/HTML5Lexer.cpp:
2305 (WebCore::HTML5Lexer::nextToken):
2306 * html/HTML5Lexer.h:
2307 * html/HTML5Token.h:
2308 (WebCore::HTML5Token::beginDOCTYPE):
2309 (WebCore::HTML5Token::publicIdentifier):
2310 (WebCore::HTML5Token::systemIdentifier):
2311 (WebCore::HTML5Token::setPublicIdentifierToEmptyString):
2312 (WebCore::HTML5Token::setSystemIdentifierToEmptyString):
2313 (WebCore::HTML5Token::appendToPublicIdentifier):
2314 (WebCore::HTML5Token::appendToSystemIdentifier):
2315 (WebCore::HTML5Token::DoctypeData::DoctypeData):
2316 * html/HTML5TreeBuilder.cpp:
2317 (WebCore::convertToOldStyle):
2318 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser):
2319 * platform/text/SegmentedString.h:
2320 (WebCore::SegmentedString::lookAheadIgnoringCase):
2321 (WebCore::SegmentedString::advanceAndASSERTIgnoringCase):
2323 == Rolled over to ChangeLog-2010-05-24 ==