1 2007-11-26 Timothy Hatcher <timothy@apple.com>
3 Reviewed by Adam Roben.
5 Bug 16137: Web Inspector window on Leopard should have a unified toolbar and window title
6 http://bugs.webkit.org/show_bug.cgi?id=16137
8 On Leopard the toolbar background will be transparent, to allow the
9 window background to show through the transparent WebView. The
10 search results divs needed to move inside the "main" div, so they
11 would be clipped and not show where the toolbar is.
13 * page/InspectorController.cpp:
14 (WebCore::platform): Return a string for which platform we are.
15 (WebCore::InspectorController::windowScriptObjectAvailable):
16 Define the platform function on the JavaScript class.
17 * page/inspector/Panel.js: Add panels to the panels div.
18 * page/inspector/inspector.css: On the Leopard platform make
19 the toolbar background transparent so the window background shows.
20 * page/inspector/inspector.html: Add a panels div and move search
21 result divs inside the main div.
22 * page/inspector/inspector.js: Tweak the resize code to acount for
23 the search results divs moving inside the main div.
25 2007-11-25 Rodney Dawes <dobey@wayofthemonkey.com>
27 Reviewed by Maciej Stachowiak.
29 Remove the unneeded CFNETWORK #ifdefs.
31 * loader/NetscapePlugInStreamLoader.h:
33 2007-11-24 Laszlo Gombos <laszlo.gombos@gmail.com>
35 Reviewed by Sam Weinig.
37 Add printf format attribute to several functions. Use the the new WTF_ATTRIBUTE_PRINTF define.
39 * dom/XMLTokenizer.cpp:
41 * platform/DeprecatedString.h:
42 * platform/PlatformString.h:
44 2007-11-25 Dan Bernstein <mitz@apple.com>
46 Reviewed by Adam Roben.
48 - fix off-center error images
50 Covered by many pixel tests with missing images
52 * rendering/RenderImage.cpp:
53 (WebCore::RenderImage::paint): Account for the 1 pixel outline when
54 positioning the error image.
56 2007-11-25 Kevin Ollivier <kevino@theolliviers.com>
58 wx build fix. Fix filename case for case-sensitive filesystems.
62 2007-11-22 Nikolas Zimmermann <zimmermann@kde.org>
64 Reviewed by Adam Roben.
66 Fixes: http://bugs.webkit.org/show_bug.cgi?id=15564
68 Fix problems with hidden glyphs. They were taken into account for quite
69 some operations (hit testing, length calulcations etc..) except painting.
70 Especially fixes boundaries of <textPath> (see using Web Inspector) if
71 text-anchor isn't equal to 'start'.
74 svg/text/textPathBoundsBug.svg
76 Fixed testcase: (all showed text selection problems on text paths)
77 svg/batik/text/textGlyphOrientationHorizontal.svg
78 svg/batik/text/textOnPath.svg
79 svg/batik/text/textOnPath3.svg
80 svg/batik/text/verticalTextOnPath.svg
81 svg/text/text-align-04-b.svg
82 svg/W3C-SVG-1.1/text-align-04-b.svg
84 * rendering/SVGCharacterLayoutInfo.cpp:
85 (WebCore::SVGChar::isHidden):
86 * rendering/SVGCharacterLayoutInfo.h:
87 (WebCore::SVGCharOnPath::SVGCharOnPath):
88 * rendering/SVGInlineTextBox.cpp:
89 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
90 (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
91 * rendering/SVGRootInlineBox.cpp:
92 (WebCore::topLeftPositionOfCharacterRange):
93 (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
94 (WebCore::cummulatedWidthOrHeightOfTextChunk):
95 (WebCore::applyTextAnchorToTextChunk):
96 (WebCore::applyTextLengthCorrectionToTextChunk):
97 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
98 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
99 (WebCore::SVGRootInlineBox::buildTextChunks):
101 2007-11-25 Alexey Proskuryakov <ap@webkit.org>
105 http://bugs.webkit.org/show_bug.cgi?id=15919
106 XSLTProcessor.transformToFragment creates an extra not defined TEXT_NODE at the end
108 Test: fast/xsl/extra-lf-at-end.html
110 * xml/XSLTProcessor.cpp:
111 (WebCore::writeToVector): Changed to use Vector to avoid slow String::apend().
112 (WebCore::saveResultToString): Remove trailing line feed if present.
114 2007-11-24 Mark Rowe <mrowe@apple.com>
116 Reviewed by Tim Hatcher.
118 Fix <rdar://problem/5432686> 333MB RPRVT seems to leak @ www.43folders.com (1hr plug-in stream).
119 http://bugs.webkit.org/show_bug.cgi?id=13705
121 Don't buffer the entire stream contents in memory in the ResourceLoader.
123 * loader/mac/NetscapePlugInStreamLoaderMac.mm:
124 (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
125 (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
126 * loader/mac/WebPlugInStreamLoaderDelegate.h:
128 2007-11-23 Adam Roben <aroben@apple.com>
130 Get rid of WebCoreSystemInterface on Windows
132 The one function defined in that file is now in WebKitSystemInterface.
136 * WebCore.vcproj/WebCore.vcproj: Removed
137 WebCoreSystemInterface.{cpp,h}.
138 * platform/graphics/cg/ImageCG.cpp: Made #include of
139 WebCoreSystemInterface.h Mac-only.
140 * platform/win/GraphicsContextWin.cpp: Ditto.
141 * platform/win/WebCoreSystemInterface.cpp: Removed.
142 * platform/win/WebCoreSystemInterface.h: Removed.
144 2007-11-24 Adam Roben <aroben@apple.com>
146 Replace uses of %@ with %s in the inspector
148 Rubberstamped by Tim.
150 * English.lproj/InspectorLocalizedStrings.js: Changed %@ to %s.
151 * page/inspector/DatabasePanel.js: Ditto.
152 * page/inspector/StylesSidebarPane.js: Ditto.
153 * page/inspector/inspector.js: Ditto.
154 * page/inspector/utilities.js:
155 (String.vsprintf): Removed @ as a format specifier.
157 2007-11-24 Adam Roben <aroben@apple.com>
161 Turn off the change made in r27984 on Windows for now.
163 * xml/XSLTProcessor.cpp:
164 (WebCore::XSLTProcessor::transformToString):
165 * xml/XSLTUnicodeSort.cpp:
167 2007-11-24 Timothy Hatcher <timothy@apple.com>
169 Reviewed by Adam Roben.
171 Bug 16121: Web Inspector needs helper functions that pass a 'this' object to
172 addEventListener and setTimeout
173 http://bugs.webkit.org/show_bug.cgi?id=16121
175 Add Function.prototype.bind. This helper will return a wrapper function
176 that will call the original function with the supplied arguments
177 and using the supplied 'this' object.
179 * page/inspector/Database.js: Remove a use of setTimeout by
180 inheriting some common functions from Resource.
181 * page/inspector/DatabasePanel.js: Use the new bind function.
182 * page/inspector/ConsolePanel.js: Ditto.
183 * page/inspector/DocumentPanel.js: Ditto.
184 * page/inspector/NetworkPanel.js: Ditto.
185 * page/inspector/PropertiesSection.js: Ditto.
186 * page/inspector/Resource.js: Ditto.
187 * page/inspector/SidebarPane.js: Ditto.
188 * page/inspector/inspector.html: Moved Database.js after Resource.js,
189 now that Database.js uses it.
190 * page/inspector/inspector.js: Use the new bind function. Also
191 removed a setTimeout used for the localized strings code. There is
192 now a load event listener added to the localized strings script
193 element that will call WebInspector.loaded.
194 * page/inspector/utilities.js: Add Function.prototype.bind.
196 2007-11-24 Timothy Hatcher <timothy@apple.com>
198 Reviewed by Adam Roben.
200 Bug 16112: Some Web Inspector UI elements use offsetWidth and offsetHeight before the stylesheet loads
201 http://bugs.webkit.org/show_bug.cgi?id=16112
203 In the places where we use offsetWidth and offsetHeight before
204 the stylesheet loads there is now a check. If the body's
205 offsetWidth is not greater than zero, then set a timeout
206 to do the updates requiring the stylesheet later.
208 The three places this happened:
209 - DOM tree selection highlight would show up at the wrong height
210 when using Inspect Element to open the inspector.
211 - DOM tree breadcrumbs would not collapse when using Inspect Element
212 to open the inspector.
213 - Network Timeline divider lines would not show when opening directly
216 * page/inspector/DocumentPanel.js: Check if the stylesheet loaded.
217 * page/inspector/NetworkPanel.js: Ditto.
218 * page/inspector/inspector.html: Include the stylesheet before
219 any scripts, this will help get it loaded sooner.
221 2007-11-24 Kevin Ollivier <kevino@theolliviers.com>
223 Add wx implementation for pathGetFilename
225 Reviewed by David D. Kilzer.
227 * html/HTMLFormElement.cpp:
228 (WebCore::pathGetFilename):
230 2007-11-23 Timothy Hatcher <timothy@apple.com>
232 Reviewed by Adam Roben.
234 Bug 16110: Clicking inside the resource headers in the network timeline collapses them
235 http://bugs.webkit.org/show_bug.cgi?id=16110
237 Toggle the resource headers only if the click happens on the
238 resource row, not within the headers area.
240 * WebCore.xcodeproj/project.pbxproj:
241 * page/inspector/NetworkPanel.js:
243 2007-11-23 Kevin Ollivier <kevino@theolliviers.com>
245 Win build fixes. CURL needs winsock, so don't disable it, and
246 include pthreads.h to get the threadsafe *_r functions.
248 Reviewed by Adam Roben.
251 * loader/FTPDirectoryDocument.cpp:
252 * loader/FTPDirectoryParser.cpp:
254 2007-11-23 Kevin Ollivier <kevino@theolliviers.com>
256 wx build fix. Move wx settings to project build settings,
257 remove some old settings that were masking a build problem,
258 and fix include ordering to ensure proper config.h and
259 unicode/utf8.h headers are used.
264 2007-11-23 Simon Hausmann <hausmann@webkit.org>
266 Reviewed by George Staikos <staikos@kde.org>.
268 Another build fix specific to trunk (instead of the stable branch) to fix make clean (which the buildbots call).
272 2007-11-23 Alexey Proskuryakov <ap@webkit.org>
274 Not reviewed, trivial leak fix.
276 Fix xsltUnicodeSortFunction() memory leaks.
278 * xml/XSLTUnicodeSort.cpp:
279 (WebCore::xsltUnicodeSortFunction):
281 2007-11-23 Alexey Proskuryakov <ap@webkit.org>
285 <rdar://problem/5539306> REGRESSION: redirect fails when subframe's document is opened but
286 not closed (affects digg.com)
288 Tests: fast/loader/meta-refresh-vs-open.html
289 fast/loader/redirect-with-open-subframe-2.html
290 fast/loader/redirect-with-open-subframe.html
291 http/tests/loading/onload-vs-immediate-refresh.pl
293 * loader/FrameLoader.cpp:
294 (WebCore::FrameLoader::scheduleRedirection): Only check whether the load is complete for
295 HTTP redirects - JavaScript-initiated ones are effective immediately.
297 2007-11-23 Dan Bernstein <mitz@apple.com>
299 Reviewed by Alexey Proskuryakov.
301 - apply matrix transforms on the correct side of the transformation
302 matrix (not on the side where the vector is multiplied).
304 Test: fast/transforms/matrix-02.html
306 * rendering/RenderStyle.h:
307 (WebCore::MatrixTransformOperation::apply):
309 2007-11-23 Alexey Proskuryakov <ap@webkit.org>
313 http://bugs.webkit.org/show_bug.cgi?id=16077
314 <rdar://problem/5609785> XSLT processor <xsl:sort> algorithm is incompatible with other
315 browser implementations
317 Test: fast/xsl/sort-unicode.xml
319 * xml/XSLTProcessor.cpp:
320 (WebCore::XSLTProcessor::transformToString): Set a custom sort function.
322 * xml/XSLTUnicodeSort.cpp: Added.
323 (init_xsltTransformError):
324 (xsltTransformError):
325 (WebCore::xsltUnicodeSortFunction):
326 * xml/XSLTUnicodeSort.h: Added.
327 ICU-based implementation of xsl:sort, using an example from libxslt distribution.
328 Only minimal coding style fixes to ease synchronization with upstream in the future.
330 * icu/unicode/ucol.h: Added.
331 * icu/unicode/uset.h: Added.
335 * WebCore.vcproj/WebCore.vcproj:
336 * WebCore.xcodeproj/project.pbxproj:
337 * WebCoreSources.bkl:
338 Added XSLTUnicodeSort.cpp.
340 2007-11-22 Alexey Proskuryakov <ap@webkit.org>
344 http://bugs.webkit.org/show_bug.cgi?id=14977
345 Hixie's DOM Core performance test shows insert >10x slower than append
347 Each invocation of Element.childNodes[n] was creating and registering a new ChildNodeList,
348 which persisted and listened to notifications until GC.
350 A fix is to avoid registering child node lists for notifications - they don't need them, as
351 they share a common cache in Node.
354 (WebCore::Node::registerNodeList):
355 (WebCore::Node::unregisterNodeList):
356 (WebCore::Node::notifyLocalNodeListsAttributeChanged):
357 (WebCore::Node::notifyLocalNodeListsChildrenChanged):
359 (WebCore::NodeList::needsNotifications):
361 2007-11-22 Dan Bernstein <mitz@apple.com>
363 Reviewed by Antti Koivisto.
365 - fix http://bugs.webkit.org/show_bug.cgi?id=15811
366 WebKit plug-ins can re-enter WebKit under attach()
367 <rdar://problem/5577978>
369 Defer plug-in loading until after attach and recalcStyle using the
370 post-attach callback mechanism. Netscape plug-ins are still loaded only
373 * dom/ContainerNode.cpp:
374 Made NodeCallbackQueue elements retain the Node because callbacks might
375 delete nodes that are in the callback queue.
376 (WebCore::ContainerNode::suspendPostAttachCallbacks): Added. Needed to
377 prevent post-attach callbacks from being dispatched under recalcStyle().
378 (WebCore::ContainerNode::resumePostAttachCallbacks): Ditto.
379 (WebCore::ContainerNode::dispatchPostAttachCallbacks): Factored out from
381 (WebCore::ContainerNode::attach):
382 * dom/ContainerNode.h:
384 (WebCore::Document::recalcStyle): Added calls to
385 suspendPostAttachCallbacks() and resumePostAttachCallbacks().
386 * html/HTMLEmbedElement.cpp:
387 (WebCore::HTMLEmbedElement::HTMLEmbedElement):
388 (WebCore::HTMLEmbedElement::attach): Changed to queue the widget update
390 (WebCore::HTMLEmbedElement::updateWidget): Added. Called by the
391 post-attach callback.
392 * html/HTMLEmbedElement.h: Added an m_needWidgetUpdate member needed to
393 prevent a double update if another plug-in's post-attach updateWidget()
394 triggers a layout which updates the widget before this plug-in's
395 post-attach callback is invoked.
396 (WebCore::HTMLEmbedElement::setNeedWidgetUpdate): Added a setter for
398 * html/HTMLObjectElement.cpp:
399 (WebCore::HTMLObjectElement::attach): Changed to queue the widget update
401 (WebCore::HTMLObjectElement::updateWidget): Added. Called by the
402 post-attach callback.
403 * html/HTMLObjectElement.h:
404 (WebCore::HTMLObjectElement::setNeedWidgetUpdate): Added a setter for
406 * html/HTMLPlugInElement.cpp:
407 (WebCore::HTMLPlugInElement::updateWidgetCallback): Added.
408 * html/HTMLPlugInElement.h:
409 (WebCore::HTMLPlugInElement::updateWidget):
410 * rendering/RenderPartObject.cpp:
411 (WebCore::RenderPartObject::updateWidget): Added calls to
412 setNeedWidgetUpdate(false) so that if this method is called from
413 FrameView::layout() during post-attach dispatch of another plug-in,
414 it will not be called again when this plug-in's post-attach callback
416 * rendering/RenderPartObject.h:
417 (WebCore::RenderPartObject::updateWidget) Renamed argument to match
418 the method definition.
420 2007-11-22 Timothy Hatcher <timothy@apple.com>
422 Reviewed by Dan Bernstein.
424 Fix the Element.hasStyleClass and Element.removeStyleClass helpers
425 to not find and replace substrings, but whole class names at the
426 beginning or end of the string or surrounded by whitespace.
428 * page/inspector/utilities.js:
430 2007-11-22 Timothy Hatcher <timothy@apple.com>
432 Revert part of my r27935 change that made the Tip balloons
433 animate with CSS transitions. The balloon was only opacity 0,
434 so it would cause its row to highlight when hovering over
437 * page/inspector/NetworkPanel.js:
438 * page/inspector/inspector.css:
440 2007-11-22 Dan Bernstein <mitz@apple.com>
442 Reviewed by Maciej Stachowiak.
444 - fix http://bugs.webkit.org/show_bug.cgi?id=15943
445 -webkit-transform matrix does not work
447 Test: fast/transforms/matrix-01.html
449 Parse all six matrix entries as numbers.
452 (WebCore::TransformOperationInfo::TransformOperationInfo):
453 (WebCore::CSSParser::parseTransform):
454 * css/CSSStyleSelector.cpp:
455 (WebCore::CSSStyleSelector::applyProperty):
456 * rendering/RenderStyle.cpp:
457 (WebCore::MatrixTransformOperation::blend):
458 * rendering/RenderStyle.h:
459 (WebCore::MatrixTransformOperation::MatrixTransformOperation):
460 (WebCore::MatrixTransformOperation::apply):
462 2007-11-22 Laszlo Gombos <laszlo.gombos@gmail.com>
464 Reviewed by Alp Toker.
466 Fix some compilation warnings. Do not reference undefined (platform) specific type (WebCore::CachedFont::m_fontData)
468 * loader/CachedFont.cpp:
469 (WebCore::CachedFont::~CachedFont):
470 (WebCore::CachedFont::allReferencesRemoved):
472 2007-11-22 Alp Toker <alp@atoker.com>
474 Reviewed by Mark Rowe.
478 Add a check to avoid crashing when the GraphicsContext is not
479 associated with a GdkEventExpose. This was noticed when adding
480 printing support but might be triggered in other situations too.
482 * platform/gtk/WidgetGtk.cpp:
483 (WebCore::Widget::paint):
485 2007-11-22 Julien Chaffraix <julien.chaffraix@gmail.com>
489 Bug 15530: XMLHttpRequest should not support certain methods
491 Test: http/tests/xmlhttprequest/xmlhttprequest-forbidden-methods-exception.html
493 * xml/XMLHttpRequest.cpp:
494 (WebCore::XMLHttpRequest::open):
496 2007-11-22 Simon Hausmann <hausmann@kde.org>
500 For the build inside Qt include qbase.pri and don't duplicate what qbase.pri otherwise does (install targets, etc.)
504 2007-11-22 Simon Hausmann <hausmann@kde.org>
508 Don't set OBJECTS_DIR when building inside Qt
512 2007-11-22 Simon Hausmann <hausmann@kde.org>
516 Use ../generated as path for the generated sources for builds inside Qt
520 2007-11-22 Simon Hausmann <hausmann@kde.org>
524 Make the directory of where to put the generated sources configurable through the GENERATED_SOURCE_DIR variable
528 2007-11-22 Simon Hausmann <hausmann@kde.org>
532 Centralize the setup for all the extra compilers in a addExtraCompiler function.
534 This allows adding a "generated_files" target that builds all generated files using "make generated_files".
535 For the build inside Qt we do not generate actual rules for the extra compilers but instead
536 do the variable substitution of compiler.output manually and add the generated sources to SOURCES.
540 2007-11-21 Timothy Hatcher <timothy@apple.com>
542 Reviewed by Eric Seidel.
544 Show Fonts as Yellow in the network timeline.
546 * page/inspector/NetworkPanel.js:
547 * page/inspector/inspector.css:
549 2007-11-21 Dan Bernstein <mitz@apple.com>
551 Reviewed by Eric Seidel.
553 - fix <rdar://problem/5607037> REGRESSION (r27351): Departure date does not repaint when changed on Google Maps public transit planner (16034)
555 Test: fast/repaint/subtree-root-skipped.html
557 * page/FrameView.cpp:
558 (WebCore::FrameViewPrivate::FrameViewPrivate): Initialize the layout
560 (WebCore::FrameView::layoutRoot): Changed to return a RenderObject
562 (WebCore::FrameView::layout): Changed for layout root being a renderer
563 rather than a DOM node. Also replaced clearing the repaint rects
564 set with asserting that it is empty if this is the top-level call to
565 layout(). If it is not, the set may contain rects from enclosing
566 layout() and those should not be removed.
567 (WebCore::FrameView::scheduleRelayout): Changed for layout root being
568 a renderer rather than a DOM node.
569 (WebCore::isObjectAncestorContainerOf): Added this helper function that
570 tests whether one object will be marked by calling
571 markContainingBlocksForLayout() on the other.
572 (WebCore::FrameView::scheduleRelayoutOfSubtree): Changed for layout
573 root being a renderer rather than a DOM node. Changed the check if new
574 and current layout roots are on the same path from the root to use
575 the subgraph of the render tree defined by container()hood instead of
576 the DOM tree and parenthood.
578 * rendering/RenderBox.cpp:
579 (WebCore::RenderBox::calcWidth): Changed for layout root being a
580 renderer rather than a DOM node.
581 * rendering/RenderObject.cpp:
582 (WebCore::RenderObject::~RenderObject): Added an assertion that the
583 object being deleted is not currently the layout root.
584 (WebCore::RenderObject::scheduleRelayout): Changed for layout root being
585 a renderer rather than a DOM node.
587 2007-11-21 Mark Rowe <mrowe@apple.com>
591 Fix WebCore to build without warnings under GCC 4.2.
593 * Configurations/Base.xcconfig:
594 * css/CSSRuleList.cpp:
595 (WebCore::CSSRuleList::deleteRule):
596 * css/CSSStyleSelector.cpp:
597 (WebCore::CSSStyleSelector::locateSharedStyle):
598 * html/HTMLParser.cpp:
599 (WebCore::HTMLParser::allowNestedRedundantTag):
600 * rendering/RenderBlock.cpp:
601 (WebCore::RenderBlock::fillInlineSelectionGaps):
602 (WebCore::RenderBlock::fillBlockSelectionGaps):
603 * rendering/RenderLayer.cpp:
604 (WebCore::RenderLayer::stackingContext):
605 (WebCore::RenderLayer::enclosingPositionedAncestor):
606 (WebCore::RenderLayer::transparentAncestor):
607 * rendering/RenderStyle.cpp:
608 (WebCore::BackgroundLayer::fillUnsetProperties):
609 (WebCore::Transition::fillUnsetProperties):
610 * rendering/RenderText.cpp:
611 (WebCore::RenderText::containsOnlyWhitespace):
612 * rendering/bidi.cpp:
613 (WebCore::RenderBlock::determineStartPosition):
615 2007-11-21 Alp Toker <alp@atoker.com>
617 Reviewed by Mark Rowe.
619 http://bugs.webkit.org/show_bug.cgi?id=16071
620 Curl backend handles EINTR incorrectly
622 Defer timers during select() to avoid interruption by timer signals.
624 * platform/network/curl/ResourceHandleManager.cpp:
625 (WebCore::ResourceHandleManager::downloadTimerCallback):
627 2007-11-21 Mark Rowe <mrowe@apple.com>
629 Reviewed by Tim Hatcher.
631 Changes due to <rdar://problem/5602936> Need to resolve new GCC 4.2 warnings
633 Update format strings to use format specifiers that match the argument types.
635 * loader/icon/IconDatabase.cpp:
636 (WebCore::IconDatabase::performURLImport):
637 (WebCore::IconDatabase::writeToDatabase):
638 * platform/mac/TextCodecMac.cpp:
639 (WebCore::TextCodecMac::decode):
640 * storage/Database.cpp:
641 (WebCore::Database::deliverAllPendingCallbacks):
643 2007-11-21 Xan Lopez <xan@gnome.org>
645 Reviewed by Alp Toker.
647 Clarify scroll event processing with a comment.
649 * platform/gtk/PlatformScrollBarGtk.cpp:
650 (gtkScrollEventCallback):
652 2007-11-21 Timothy Hatcher <timothy@apple.com>
654 Reviewed by Adam Roben.
656 Bug 16085: Web Inspector's Network Timeline graph code clean up and misc. fixes
657 http://bugs.webkit.org/show_bug.cgi?id=16085
660 - Refactor the drawing code as nested functions instead of global functions.
661 - Compute the segment percentages only once per call to drawSummaryGraph.
662 - Account for percentages that rounded down to total less-than 100%.
663 - Draw the pill shadow better using the canvas shadow drawing properties.
664 - Removes a couple canvas context saves and restores.
666 * page/inspector/NetworkPanel.js:
668 2007-11-21 Alexey Proskuryakov <ap@webkit.org>
670 Reviewed by Adam Roben.
672 http://bugs.webkit.org/show_bug.cgi?id=16056
673 Unicode not being interpreted correctly in Web Inspector source view
675 Cannot be tested automatically.
677 * loader/CachedCSSStyleSheet.cpp:
678 (WebCore::CachedCSSStyleSheet::encoding):
679 * loader/CachedCSSStyleSheet.h:
680 * loader/CachedResource.h:
681 (WebCore::CachedResource::encoding):
682 * loader/CachedScript.cpp:
683 (WebCore::CachedScript::encoding):
684 * loader/CachedScript.h:
685 * loader/CachedXBLDocument.cpp:
686 (WebCore::CachedXBLDocument::encoding):
687 * loader/CachedXBLDocument.h:
688 * loader/CachedXSLStyleSheet.cpp:
689 (WebCore::CachedXSLStyleSheet::encoding):
690 * loader/CachedXSLStyleSheet.h:
691 Teach textual CachedResources to report their encodings.
693 * page/InspectorController.cpp:
694 (WebCore::addSourceToFrame):
695 (WebCore::updateResourceResponse):
696 Use the actual encoding - the network layer has little idea about it.
698 2007-11-20 Mark Rowe <mrowe@apple.com>
700 Reviewed by Maciej Stachowiak.
702 Fix <rdar://problem/5609579> (DOMParser().parseFromString() freezes Safari when parsing large nodes with XML entities)
703 http://bugs.webkit.org/show_bug.cgi?id=16076
705 XMLTokenizer was calling CharacterData::appendData twice per entity in the fragment of XML being
706 parsed (once for text before the entity, once for the entity itself). This triggered O(n^2) copying
707 of the CharacterData's string due to resizing. We now prevent this happening by buffering all the
708 content for a given Text node in the XMLTokenizer before sending it out to the node in a single go.
710 * dom/XMLTokenizer.cpp:
711 (WebCore::XMLTokenizer::characters): Append the characters to the buffer.
712 (WebCore::XMLTokenizer::endDocument): Ensure the buffer is flushed when the document has ended.
713 (WebCore::endDocumentHandler):
714 (WebCore::XMLTokenizer::enterText):
715 (WebCore::XMLTokenizer::exitText): Append the contents of the buffer to the node.
716 (WebCore::XMLTokenizer::initializeParserContext): Add the endDocument handler.
717 (WebCore::parseXMLDocumentFragment): Force endDocument to be called when parsing a fragment to ensure
718 that the buffer gets flushed to the node.
719 * dom/XMLTokenizer.h:
721 2007-11-20 Timothy Hatcher <timothy@apple.com>
723 Reviewed by Mark Rowe.
725 Animate the status area and tip balloons in the Web Inspector
728 * page/inspector/NetworkPanel.js:
729 * page/inspector/inspector.css:
730 * page/inspector/inspector.js:
732 2007-11-20 Kevin Ollivier <kevino@theolliviers.com>
734 wx build fix for Windows. Don't use WebCore/move-js-headers.sh as
735 it indiscriminately copies any headers inside JavaScriptCore,
736 which includes Tiger ICU headers.
739 Remove references to the WebCore/include dir generated by
740 move-js-headers.sh, and also get headers from JavaScriptCore
741 directly rather than from WebCore/ForwardingHeaders.
743 2007-11-20 Alp Toker <alp@atoker.com>
745 Reviewed by Mark Rowe.
747 Avoid pointlessly mallocing and freeing this transform matrix.
749 * platform/gtk/FontPlatformDataGtk.cpp:
750 (WebCore::FontPlatformData::FontPlatformData):
752 2007-11-20 Naiem Shaik <naiem.shaik@gmail.com>
754 Reviewed by Alp Toker.
756 http://bugs.webkit.org/show_bug.cgi?id=15763
757 [GTK] Enter key does not take to the link highlighted.
759 Add missing keycode cases.
761 * platform/gtk/KeyEventGtk.cpp:
762 (WebCore::keyIdentifierForGdkKeyCode):
763 (WebCore::windowsKeyCodeForKeyEvent):
764 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
766 2007-11-20 Mark Rowe <mrowe@apple.com>
768 Reviewed by Sam Weinig.
770 Fix http://bugs.webkit.org/show_bug.cgi?id=16074
771 Bug 16074: execCommand("InsertHorizontalRule", false, "") results in id="" being inserted
773 For consistency with InsertOrderedList and InsertUnorderedList a value parameter of "" should
774 not result in an id being set.
776 * editing/JSEditor.cpp: Don't set the id attribute if value is empty.
778 2007-11-20 Dan Bernstein <mitz@apple.com>
780 Reviewed by Adam Roben.
782 - fix <rdar://problem/5090708> Textareas render broken-looking scrollbars when too short to show full scrollbar
784 * platform/win/PlatformScrollBar.h:
785 * platform/win/PlatformScrollBarSafari.cpp:
786 Added the "hit inset" constants (representing how far the track eats
788 (WebCore::PlatformScrollbar::paint): Changed to paint the buttons and
789 the thumb only if they should be showing.
790 (WebCore::PlatformScrollbar::hasButtons): Added. Returns whether the
791 arrows should be drawn.
792 (WebCore::PlatformScrollbar::hasThumb): Added. Returns whether the thumb
794 (WebCore::PlatformScrollbar::forwardButtonRect):
795 (WebCore::PlatformScrollbar::trackRect): Changed to return the entire
796 bounds of the scrollbar if the scrollbar has no buttons.
797 (WebCore::PlatformScrollbar::paintTrack): Changed to paint a disabled
798 track along the entire scrollbar if it has not buttons.
799 (WebCore::PlatformScrollbar::hitTest): Changed to hit test only the
800 parts that the scrollbar has in its current dimensions.
802 2007-11-20 Mark Rowe <mrowe@apple.com>
804 Reviewed by Alp Toker.
806 * config.h: Change #if to #ifdef to silence warnings on non-Apple platforms.
808 2007-11-20 Simon Hausmann <hausmann@kde.org>
810 Reviewed by Adam Treat <treat@kde.org>.
812 Remove static linkage of QtWebKit against the ICO image format plugin.
813 Instead build the support for the ICO image format as a proper standalone qt image format plugin and install it.
816 * platform/graphics/qt/ImageDecoderQt.cpp:
818 2007-11-20 David D. Kilzer <ddkilzer@webkit.org>
820 no-svg build broken after r27278
821 <http://bugs.webkit.org/show_bug.cgi?id=16061>
825 * bindings/scripts/CodeGeneratorObjC.pm: Always generate DOMHTMLEmbedElementPrivate.h
826 and DOMHTMLObjectElementPrivate.h for no-svg build.
828 2007-11-20 Adam Treat <treat@kde.org>
832 * Don't use so much heap memory.
834 * platform/graphics/qt/ImageDecoderQt.cpp:
835 * platform/graphics/qt/ImageDecoderQt.h:
836 * platform/graphics/qt/ImageSourceQt.cpp:
837 (WebCore::ImageSource::createFrameAtIndex):
839 2007-11-20 Lars Knoll <lars@trolltech.com>
843 Fix text break interators.
845 The break iterators where trying to be smart about the input
846 string and caching their results. Unfortunately a pointer/string length
847 comparison is not good enough in all cases (since some input is stack based
848 temp strings). Removed the caching but at the same time started to use a more
849 efficient constructor of QTextBoundaryFinder that doesn't need to malloc for
852 Fixes two test cases that test "text-transform: capitalize".
854 * platform/qt/TextBreakIteratorQt.cpp:
855 (WebCore::wordBreakIterator):
856 (WebCore::characterBreakIterator):
857 (WebCore::lineBreakIterator):
858 (WebCore::sentenceBreakIterator):
860 2007-11-20 Adam Treat <treat@kde.org>
864 * Make gif animations work for instance.
866 * platform/graphics/qt/ImageDecoderQt.cpp:
867 (WebCore::ImageDecoderQt::reset):
868 (WebCore::ImageDecoderQt::setData):
869 (WebCore::ImageDecoderQt::frameCount):
870 (WebCore::ImageDecoderQt::repetitionCount):
871 * platform/graphics/qt/ImageDecoderQt.h:
873 2007-11-20 Adam Treat <treat@kde.org>
875 * Build in release mode
877 * platform/NotImplemented.h:
879 2007-11-20 Adam Treat <treat@kde.org>
881 Reviewed by Simon and George.
883 * Be quiet and allow suppression of NotImplemented calls at runtime.
885 * platform/NotImplemented.h:
887 2007-11-19 Doug Turner <dougt@meer.net>
889 Reviewed by Alp Toker.
891 http://bugs.webkit.org/show_bug.cgi?id=16054
892 Crash when GlyphPage::fill is called with more than 256 bytes of data
894 http://bugs.webkit.org/show_bug.cgi?id=14446
895 [GDK] Crash on http://www.wikipedia.org/
897 setGlyphDataForIndex() uses a fixed array of size 256 which we can't
898 exceed. We need to return failure if the buffer has Unicode
899 supplementary characters for now.
901 This strategy matches the Win port, which also doesn't support this
904 Add an assertion so nobody makes this mistake again.
906 * platform/GlyphPageTreeNode.h:
907 (WebCore::GlyphPage::setGlyphDataForIndex):
908 * platform/gtk/GlyphPageTreeNodeGtk.cpp:
909 (WebCore::GlyphPage::fill):
911 2007-11-19 Doug Turner <dougt@meer.net>
913 Reviewed by Timothy Hatcher.
915 http://bugs.webkit.org/show_bug.cgi?id=16050
916 sqlite3_prepare16_v2 build bustage.
918 Using the correct SQLITE_VERSION_NUMBER around sqlite_prepare16_v2
919 to fix build bustage.
921 * platform/sql/SQLiteStatement.cpp:
922 (WebCore::SQLiteStatement::prepare):
924 2007-11-19 Mark Rowe <mrowe@apple.com>
926 Build fix. Don't over-qualify the constructor name.
928 * storage/DatabaseDetails.h:
930 2007-11-19 Brady Eidson <beidson@apple.com>
934 Stub out the WebCore parts of the WebKit API
937 * WebCore.xcodeproj/project.pbxproj:
939 * storage/DatabaseDetails.h: Added. Simple container for vitals on a specific database
940 (WebCore::DatabaseDetails::DatabaseDetails::DatabaseDetails):
941 (WebCore::DatabaseDetails::DatabaseDetails):
942 (WebCore::DatabaseDetails::isValid):
943 (WebCore::DatabaseDetails::name):
944 (WebCore::DatabaseDetails::version):
945 (WebCore::DatabaseDetails::displayName):
946 (WebCore::DatabaseDetails::expectedUsage):
947 (WebCore::DatabaseDetails::currentUsage):
949 * storage/DatabaseTracker.cpp: Added various methods for API usage
950 (WebCore::DatabaseTracker::detailsForNameAndOrigin):
951 (WebCore::DatabaseTracker::usageForOrigin):
952 (WebCore::DatabaseTracker::quotaForOrigin):
953 (WebCore::DatabaseTracker::setQuota):
954 * storage/DatabaseTracker.h:
956 2007-11-19 Kevin Ollivier <kevino@theolliviers.com>
960 * platform/graphics/wx/AffineTransformWx.cpp:
961 (WebCore::AffineTransform::operator== ):
962 m_transform is only available when using wxGraphicsContext.
964 2007-11-19 Alp Toker <alp@atoker.com>
966 Reviewed by Mark Rowe.
970 Add a check to avoid crashing when the GraphicsContext is not
971 associated with a GdkDrawable. This was noticed when adding printing
972 support but might be triggered in other situations too.
974 Do not render themes when painting is disabled. This is an
975 optimisation for cases where GraphicsContext is used to calculate page
976 dimensions etc. without actually rendering.
978 * platform/graphics/cairo/GraphicsContextCairo.cpp:
979 (WebCore::GraphicsContext::gdkDrawable):
980 * platform/gtk/RenderThemeGtk.cpp:
981 (WebCore::paintMozWidget):
983 2007-11-13 Rahul Abrol <ra5ul@comcast.net>
985 Reviewed by Tim Hatcher.
987 http://bugs.webkit.org/show_bug.cgi?id=15977
988 Resizing images preference now toggles default image state.
990 * loader/ImageDocument.cpp:
991 (WebCore::ImageDocument::ImageDocument):
992 (WebCore::ImageDocument::createDocumentStructure):
993 (WebCore::ImageDocument::imageChanged):
995 2007-11-19 Kevin Ollivier <kevino@theolliviers.com>
997 Update wx port build sources with recent changes, update
998 wx FontPlatformData to be a class (MSVC7 gets confused
999 otherwise...) and implement its hash() method.
1003 * WebCoreSources.bkl:
1004 * platform/wx/FontPlatformData.h:
1005 (WebCore::FontPlatformData::hash):
1007 2007-11-19 Julien Chaffraix <julien.chaffraix@gmail.com>
1011 http://bugs.webkit.org/show_bug.cgi?id=12194
1012 Bug 12194: Trying to access XMLHttpRequest.responseText or responseXML when they
1013 are not available should raise an exception
1015 Tests: http/tests/xmlhttprequest/xmlhttprequest-responseText-exception.html
1016 http/tests/xmlhttprequest/xmlhttprequest-responseXML-exception.html
1018 * bindings/js/JSXMLHttpRequest.cpp:
1019 (KJS::JSXMLHttpRequest::getValueProperty):
1020 * xml/XMLHttpRequest.cpp:
1021 (WebCore::XMLHttpRequest::getResponseText):
1022 (WebCore::XMLHttpRequest::getResponseXML):
1023 * xml/XMLHttpRequest.h:
1025 2007-11-19 Peter Kasting <zerodpx@gmail.com>
1027 Reviewed by Darin Adler.
1029 http://bugs.webkit.org/show_bug.cgi?id=15971
1030 The GIF decoder should not fail decoding if the caller asks it to
1031 decode again when no new data has arrived since the last call.
1033 * platform/image-decoders/gif/GIFImageReader.cpp:
1034 (GIFImageReader::read):
1036 2007-11-18 Brady Eidson <beidson@apple.com>
1040 Fix a crash hashing a default SecurityOriginData object
1042 * storage/DatabaseTracker.cpp:
1043 (WebCore::SecurityOriginDataHash::hash): The default object has some default strings with NULL
1044 StringImpls - don't try to hash those!
1046 2007-11-18 Timothy Hatcher <timothy@apple.com>
1048 Reviewed by Sam Weinig.
1050 Bug 16043: Remove InspectorController.log now that console.log works
1051 http://bugs.webkit.org/show_bug.cgi?id=16043
1053 Remove the last uses of InspectorController.log. Once use was no longer needed,
1054 checking an erro case that can't happen anymore. The other case now uses console.error.
1056 * page/InspectorController.cpp: Remove the log function.
1057 (WebCore::InspectorController::windowScriptObjectAvailable): Remove the log function from
1058 InspectorController script class.
1059 * page/inspector/DocumentPanel.js: Remove a use of InspectorController.log that isn't needed.
1060 * page/inspector/Panel.js: Change InspectorController.log to console.log and early return.
1062 2007-11-18 Timothy Hatcher <timothy@apple.com>
1066 Bug 16041: REGRESSION: the Database panel in the Inspector stopped showing errors
1067 http://bugs.webkit.org/show_bug.cgi?id=16041
1069 * page/inspector/DatabasePanel.js: Implement error callbacks to pass to executeSql()
1070 and transaction(). Refactored some code for the success and error callbacks to use.
1072 2007-11-18 Alexey Proskuryakov <ap@webkit.org>
1076 <rdar://problem/5546393> Whitespace handling doesn't match HTML5.
1078 HTML5 definition is the same as MSIE's, with the exception that the latter strips null
1079 characters. Firefox also treats U+0008 as whitespace, but not U+000B or U+000C.
1081 Test: fast/parser/html-whitespace.html
1083 * html/HTMLTokenizer.cpp:
1084 (WebCore::HTMLTokenizer::parseSpecial):
1085 (WebCore::HTMLTokenizer::parseTag):
1086 Use isASCIISpace, which matches HTML5 definition of whitespace, and also what we use to
1087 check for whitespace almost everywhere.
1089 2007-11-17 Mark Rowe <mrowe@apple.com>
1091 Reviewed by Darin Adler.
1093 Fix: <rdar://problem/5607032> REGRESSION: testapi exits with assertion failure in debug build
1094 <rdar://problem/5440659> JSGlobalContextCreate throws away globalObjectClass's prototype
1095 http://bugs.webkit.org/show_bug.cgi?id=16033
1097 Update for changes in Interpreter method signatures.
1099 * bindings/js/kjs_binding.cpp:
1100 (KJS::ScriptInterpreter::ScriptInterpreter):
1101 * bindings/js/kjs_window.cpp:
1102 (KJS::Window::clear):
1104 2007-11-17 Timothy Hatcher <timothy@apple.com>
1106 Reviewed by Mark Rowe.
1108 Bug 13470: i18n: The Web Inspector is not localizable
1109 http://bugs.webkit.org/show_bug.cgi?id=13470
1111 Add support for localization to the Web Inspector. Clients need to
1112 implement localizedStringsURL() to return the URL of the
1113 InspectorLocalizedStrings.js that best matches the user's language.
1115 * English.lproj: Added.
1116 * English.lproj/InspectorLocalizedStrings.js: Added.
1117 * WebCore.xcodeproj/project.pbxproj: Add InspectorLocalizedStrings.js.
1118 * page/InspectorClient.h: Add localizedStringsURL.
1119 * page/InspectorController.cpp: Add localizedStringsURL that calls
1120 the client. Also added a version exposed to JavaScript.
1121 * page/InspectorController.h: Add localizedStringsURL.
1122 * page/inspector/ConsolePanel.js: Call WebInspector.UIString
1123 for user visible strings.
1124 * page/inspector/DatabasePanel.js: Ditto.
1125 * page/inspector/DocumentPanel.js: Ditto.
1126 * page/inspector/ImagePanel.js: Ditto.
1127 * page/inspector/MetricsSidebarPane.js: Ditto.
1128 * page/inspector/NetworkPanel.js: Ditto.
1129 * page/inspector/Panel.js: Ditto.
1130 * page/inspector/PropertiesSidebarPane.js: Ditto.
1131 * page/inspector/Resource.js: Ditto.
1132 * page/inspector/ResourceCategory.js: Ditto.
1133 * page/inspector/SourcePanel.js: Ditto.
1134 * page/inspector/StylesSidebarPane.js: Ditto.
1135 * page/inspector/inspector.css: Use pre-wrap so database errors can use \n.
1136 * page/inspector/inspector.html: Remove some user visible strings.
1137 * page/inspector/inspector.js: Added WebInspector.UIString and call
1138 WebInspector.UIString for user visible strings. Some code needed to be
1139 moved to WebInspector.loaded to use UIString after the localized strings
1141 * platform/graphics/svg/SVGImageEmptyClients.h:
1142 (WebCore::SVGEmptyFrameLoaderClient::redirectDataToPlugin): Remove WebCore:: prefix.
1143 (WebCore::SVGEmptyInspectorClient::createPage): Ditto.
1144 (WebCore::SVGEmptyInspectorClient::localizedStringsURL): Add empty stub.
1145 (WebCore::SVGEmptyInspectorClient::highlight): Remove WebCore:: prefix.
1146 (WebCore::SVGEmptyInspectorClient::inspectedURLChanged): Ditto.
1148 2007-11-17 Timothy Hatcher <timothy@apple.com>
1152 Reworte String.sprintf to fix many bad bugs and to not use RegExp. Also added
1153 String.vsprintf so it can be used later for the localization function.
1155 This version only supports argument reordering, precision for floats, and these
1156 format characters: d, f, s and @. Any unsupported format characters are logged
1157 and substituted like strings.
1159 * page/inspector/utilities.js:
1161 2007-11-17 Alexey Proskuryakov <ap@webkit.org>
1165 * editing/Editor.h: Made canSmartCopyOrDelete public, as Windows WebView still needs it.
1167 2007-11-17 Alexey Proskuryakov <ap@webkit.org>
1171 http://bugs.webkit.org/show_bug.cgi?id=15969
1172 Eliminate Editor::deleteRange()
1174 No change in functionality.
1176 * editing/CompositeEditCommand.h: Removed unimplemented deleteKeyPressed().
1178 * editing/Editor.cpp:
1179 (WebCore::Editor::deleteWithDirection):
1180 (WebCore::Editor::cut):
1181 (WebCore::Editor::performDelete):
1183 Moved relevant Editor::deleteRange() functionality to its callers.
1184 Removed deleteSelectionWithSmartDelete(void), which was more confusing than helpful
1187 * editing/mac/EditorMac.mm:
1188 (WebCore::initializeKillRingIfNeeded):
1189 (WebCore::Editor::addToKillRing):
1190 (WebCore::Editor::yank):
1191 (WebCore::Editor::yankAndSelect):
1192 (WebCore::Editor::setMark):
1193 (WebCore::unionDOMRanges):
1194 (WebCore::Editor::deleteToMark):
1195 (WebCore::Editor::selectToMark):
1196 (WebCore::Editor::swapWithMark):
1197 Pushed kill ring handling down from WebCore.
1199 * page/mac/WebCoreFrameBridge.h:
1200 * page/mac/WebCoreFrameBridge.mm:
1201 Removed setMarkDOMRange (the corresponding getter is still needed).
1203 * WebCore.base.exp: No longer need to export Editor::deleteRange() and Editor::insertTextWithoutSendingTextEvent().
1204 Export the new kill ring functions.
1206 2007-11-16 Ryan Leavengood <leavengood@gmail.com>
1208 Reviewed by David Kilzer.
1210 Build fix: the needed headers for POSIX file functions were not
1213 * platform/posix/FileSystemPOSIX.cpp:
1215 2007-11-16 Dan Bernstein <mitz@apple.com>
1217 Reviewed by Darin Adler.
1219 - fix the common case of <http://bugs.webkit.org/show_bug.cgi?id=15994>
1220 REGRESSION: Incomplete repaint of CSS image substitution
1222 Test: fast/repaint/clip-with-layout-delta.html
1224 * rendering/LayoutState.cpp:
1225 (WebCore::LayoutState::LayoutState): Account for layout delta when
1226 pushing additional clip.
1228 2007-11-16 Antti Koivisto <antti@apple.com>
1232 Seeking related fixes, updates to match the latest specification
1233 - rename loopCount of HTMLMediaElement to playCount
1234 - add explicit seeking attribute to HTMLMediaElement to get semantics right
1235 - implement the specification behavior that currentTime must immediately return seeked position in HTMLMediaElement
1236 instead of MoviePrivateQTKit
1237 - fix broken behavior when seeking past end of the media, add tests
1238 - replace Movie didEnd callback with broader timeChanged callback (which gets called in didEnd case too)
1239 - use setDelayCallbacks: in various MoviePrivateQTKit methods to avoid bug prone synchronous callbacks from QT, make
1240 HTMLMediaElement not depend on synchronous callbacks
1241 - do some cleanups and simplifications in MoviePrivateQTKit, get rid of m_rateBeforeSeek and m_blockStateUpdate variables
1243 Tests: http/tests/media/video-seekable-stall.html
1244 media/video-seeking.html
1245 media/video-seek-past-end-paused.html
1246 media/video-seek-past-end-playing.html
1248 * html/HTMLAttributeNames.in:
1249 * html/HTMLMediaElement.cpp:
1250 (WebCore::HTMLMediaElement::HTMLMediaElement):
1251 (WebCore::HTMLMediaElement::load):
1252 (WebCore::HTMLMediaElement::movieNetworkStateChanged):
1253 (WebCore::HTMLMediaElement::setReadyState):
1254 (WebCore::HTMLMediaElement::seek):
1255 (WebCore::HTMLMediaElement::seeking):
1256 (WebCore::HTMLMediaElement::currentTime):
1257 (WebCore::HTMLMediaElement::ended):
1258 (WebCore::HTMLMediaElement::play):
1259 (WebCore::HTMLMediaElement::pause):
1260 (WebCore::HTMLMediaElement::playCount):
1261 (WebCore::HTMLMediaElement::setPlayCount):
1262 (WebCore::HTMLMediaElement::checkIfSeekNeeded):
1263 (WebCore::HTMLMediaElement::movieTimeChanged):
1264 (WebCore::HTMLMediaElement::endedPlayback):
1265 (WebCore::HTMLMediaElement::updateMovie):
1266 * html/HTMLMediaElement.h:
1267 * html/HTMLMediaElement.idl:
1268 * platform/graphics/Movie.cpp:
1269 (WebCore::Movie::timeChanged):
1270 * platform/graphics/Movie.h:
1271 (WebCore::MovieClient::movieTimeChanged):
1272 * platform/graphics/mac/MoviePrivateQTKit.h:
1273 * platform/graphics/mac/MoviePrivateQTKit.mm:
1274 (WebCore::MoviePrivate::MoviePrivate):
1275 (WebCore::MoviePrivate::load):
1276 (WebCore::MoviePrivate::play):
1277 (WebCore::MoviePrivate::pause):
1278 (WebCore::MoviePrivate::currentTime):
1279 (WebCore::MoviePrivate::seek):
1280 (WebCore::MoviePrivate::doSeek):
1281 (WebCore::MoviePrivate::cancelSeek):
1282 (WebCore::MoviePrivate::seekTimerFired):
1283 (WebCore::MoviePrivate::startCuePointTimerIfNeeded):
1284 (WebCore::MoviePrivate::paused):
1285 (WebCore::MoviePrivate::updateStates):
1286 (WebCore::MoviePrivate::timeChanged):
1287 (WebCore::MoviePrivate::didEnd):
1289 2007-11-16 Anders Carlsson <andersca@apple.com>
1293 <rdar://problem/5603832>
1294 XMLHttpRequest readyState 3 & responseText buffer issues.
1296 * platform/network/cf/ResourceHandleCFNet.cpp:
1297 (WebCore::makeFinalRequest):
1298 Add new parameter which controls whether content sniffing should be turned off.
1300 (WebCore::ResourceHandle::loadResourceSynchronously):
1301 Always content sniff sync loads.
1303 * platform/network/cf/ResourceRequestCFNet.cpp:
1304 (WebCore::ResourceRequest::doUpdatePlatformRequest):
1305 If the ResourceRequest already has a backing CFURLRequest, make a copy of it. This preserves
1306 any properties set on the CFURLRequest.
1308 2007-11-16 Jon Honeycutt <jhoneycutt@apple.com>
1312 <rdar://problem/5605175> Crash closing or leaving window with ViewPoint
1315 ViewPoint plugin requires that we pass a valid NPSavedData* to
1318 * plugins/win/PluginViewWin.cpp: Pass a valid NPSavedData* to
1319 NPP_Destroy. If the plugin allocates data, discard it
1321 2007-11-16 Mark Rowe <mrowe@apple.com>
1323 Reviewed by Tim Hatcher.
1325 Build WebCore as a sub-framework of WebKit in all configurations.
1327 * Configurations/WebCore.xcconfig:
1328 * WebCore.xcodeproj/project.pbxproj:
1330 2007-11-16 Doug Turner <dougt@meer.net>
1334 http://bugs.webkit.org/show_bug.cgi?id=16018
1335 build bustage when building on debian 4.0
1337 Fix build bustage on GTK+ with older versions of Pango.
1339 Don't cache the return value since the docs say it can change.
1341 * platform/gtk/Language.cpp:
1342 (WebCore::defaultLanguage):
1344 2007-11-16 Brady Eidson <beidson@apple.com>
1348 * platform/SecurityOriginData.h:
1349 (WebCore::operator!=): Whoops!
1351 2007-11-16 Brady Eidson <beidson@apple.com>
1355 Further purify DatabaseTracker to use SecurityOriginData instead of "a String"
1358 * WebCore.xcodeproj/project.pbxproj:
1359 * WebCore.vcproj/WebCore.vcproj
1362 * platform/SecurityOriginData.cpp: Added.
1363 (WebCore::SecurityOriginData::SecurityOriginData): Add a constructor that takes a "stringIdentifier"-style string,
1364 since that form is what will be stored in the Databases.db on disk
1365 (WebCore::SecurityOriginData::stringIdentifier):
1366 * platform/SecurityOriginData.h:
1367 (WebCore::SecurityOriginData::protocol):
1368 (WebCore::SecurityOriginData::host):
1369 (WebCore::SecurityOriginData::port):
1371 * storage/DatabaseTracker.cpp:
1372 (WebCore::SecurityOriginDataHash::hash): Follow the pattern Darin set in FontCache.cpp to make a decent hash for
1373 a SecurityOriginData object
1374 (WebCore::SecurityOriginDataHash::equal):
1375 (WebCore::SecurityOriginDataTraits::deletedValue): "file::1" will never exist in normal operation
1376 (WebCore::SecurityOriginDataTraits::emptyValue): "file::2" will never exist in normal operation
1377 (WebCore::DatabaseTracker::fullPathForDatabase):
1378 (WebCore::DatabaseTracker::populateOrigins):
1379 (WebCore::DatabaseTracker::origins):
1380 (WebCore::DatabaseTracker::addDatabase):
1381 * storage/DatabaseTracker.h:
1383 2007-11-16 Alexey Proskuryakov <ap@webkit.org>
1387 * WebCore.vcproj/WebCore.vcproj: Removed VoidCallback.cpp, added JSCustomVoidCallback.{h,cpp}.
1389 2007-11-16 Nikolas Zimmermann <zimmermann@kde.org>
1393 Fixes: http://bugs.webkit.org/show_bug.cgi?id=12290
1395 Implement all SVGTextContentElement DOM methods.
1396 This is the last missing SVG text feature. SVG fonts is next.
1398 Added testcase: svg/custom/text-dom-01-f.svg (tests all new methods)
1400 * ksvg2/svg/SVGTextContentElement.cpp:
1401 (WebCore::cummulatedCharacterRangeLength):
1402 (WebCore::SVGInlineTextBoxQueryWalker::):
1403 (WebCore::SVGInlineTextBoxQueryWalker::SVGInlineTextBoxQueryWalker):
1404 (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
1405 (WebCore::SVGInlineTextBoxQueryWalker::setQueryInputParameters):
1406 (WebCore::SVGInlineTextBoxQueryWalker::longResult):
1407 (WebCore::SVGInlineTextBoxQueryWalker::floatResult):
1408 (WebCore::SVGInlineTextBoxQueryWalker::pointResult):
1409 (WebCore::SVGInlineTextBoxQueryWalker::rectResult):
1410 (WebCore::SVGInlineTextBoxQueryWalker::stopProcessing):
1411 (WebCore::findInlineTextBoxInTextChunks):
1412 (WebCore::rootInlineBoxForTextContentElement):
1413 (WebCore::executeTextQuery):
1414 (WebCore::SVGTextContentElement::getNumberOfChars):
1415 (WebCore::SVGTextContentElement::getComputedTextLength):
1416 (WebCore::SVGTextContentElement::getSubStringLength):
1417 (WebCore::SVGTextContentElement::getStartPositionOfChar):
1418 (WebCore::SVGTextContentElement::getEndPositionOfChar):
1419 (WebCore::SVGTextContentElement::getExtentOfChar):
1420 (WebCore::SVGTextContentElement::getRotationOfChar):
1421 (WebCore::SVGTextContentElement::getCharNumAtPosition):
1422 (WebCore::SVGTextContentElement::selectSubString):
1423 * ksvg2/svg/SVGTextContentElement.h:
1424 * rendering/SVGInlineTextBox.h:
1426 2007-11-15 Adele Peterson <adele@apple.com>
1430 Fix for <rdar://problem/5566652> CrashTracer: [USER] 3 crashes in Safari at HTMLSelectElement::menuListDefaultEventHandler (reproducible on mactc30.com)
1432 Test: fast/forms/menulist-no-renderer-onmousedown.html
1434 * html/HTMLSelectElement.cpp:
1435 (WebCore::HTMLSelectElement::defaultEventHandler): Nil check the renderer here. None of the default behavior makes sense if there's no renderer.
1436 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Moved the nil check to the main defaultEventHandler.
1438 2007-11-15 Antti Koivisto <antti@apple.com>
1442 Fix <rdar://problem/5601598>
1443 The movie tag should do initialization on need and not during startup.
1445 Initialize Movie MIME type hash on demand
1447 * platform/MIMETypeRegistry.cpp:
1448 (WebCore::initialiseSupportedMovieMIMETypes):
1449 (WebCore::initialiseMIMETypeRegistry):
1450 (WebCore::MIMETypeRegistry::isSupportedMovieMIMEType):
1451 (WebCore::MIMETypeRegistry::getSupportedMovieMIMETypes):
1453 2007-11-15 Mark Rowe <mrowe@apple.com>
1455 Build fix for Qt on Windows.
1457 * xml/XPathStep.cpp:
1458 (WebCore::XPath::Step::nodesInAxis):
1460 2007-11-15 Timothy Hatcher <timothy@apple.com>
1462 Reviewed by Mark Rowe.
1464 Bug 14761: Web Inspector leaks JS objects and DOM nodes
1465 http://bugs.webkit.org/show_bug.cgi?id=14761
1467 * page/InspectorController.cpp:
1468 (WebCore::InspectorController::~InspectorController):
1469 Change the tear down order so that inspectorDestroyed() is called before
1470 InspectorController private data is set to Zero. The inspectorDestroyed()
1471 call ends up closing the WebView and triggering InspectorController::close()
1472 which unprotects m_scriptObject. This didn't happen when the private data
1473 was cleared before calling inspectorDestroyed().
1475 2007-11-15 Mark Rowe <mrowe@apple.com>
1481 2007-11-15 Alexey Proskuryakov <ap@webkit.org>
1485 http://bugs.webkit.org/show_bug.cgi?id=15989
1486 XPath queries with predicates incorrectly retains the current node across unions
1488 Test: fast/xpath/union-context-node.xhtml
1490 * xml/XPathPath.cpp:
1491 (WebCore::XPath::LocationPath::evaluate): Restore context after evaluation.
1492 * xml/XPathStep.cpp:
1493 (WebCore::XPath::Step::evaluate): Do not backup context, as we can easily re-create it.
1495 2007-11-15 Alexey Proskuryakov <ap@webkit.org>
1499 http://bugs.webkit.org/show_bug.cgi?id=15988
1500 REGRESSION: XPath preceding-axis query misses nested elements
1502 Test: fast/xpath/preceding-axis.xhtml
1504 * xml/XPathStep.cpp:
1505 (WebCore::XPath::Step::nodesInAxis): Hopefully correct this time.
1507 2007-11-15 Timothy Hatcher <timothy@apple.com>
1509 Reviewed by Mark Rowe and Sam.
1511 This corrects a couple of issues in the Web Inspector where selected search results
1512 would not have the right text color when the window is inactive or the results are focused.
1514 * page/inspector/inspector.css:
1516 2007-11-15 Timothy Hatcher <timothy@apple.com>
1520 Bug 16007: REGRESSION: Disclosure triangle click zone for resource categories is off by 10 pixels
1521 http://bugs.webkit.org/show_bug.cgi?id=16007
1523 Makes the click width an option on TreeElement and make ResourceCategoryTreeElement
1524 a true subclass of TreeElement. The click width for ResourceCategoryTreeElement is
1525 20 pixels, and the default is 10 pixels.
1527 * page/inspector/ResourceCategory.js:
1528 * page/inspector/treeoutline.js:
1530 2007-11-15 Anders Carlsson <andersca@apple.com>
1534 Pass a VoidCallback to Database::transaction and Database::changeVersion.
1535 This is not yet hooked up to the database machinery.
1537 * WebCore.vcproj/WebCore.vcproj:
1538 * bindings/js/JSDatabaseCustom.cpp:
1539 (WebCore::JSDatabase::changeVersion):
1540 (WebCore::JSDatabase::transaction):
1541 * storage/Database.cpp:
1542 (WebCore::Database::changeVersion):
1543 (WebCore::Database::transaction):
1544 * storage/Database.h:
1546 2007-11-15 Timothy Hatcher <timothy@apple.com>
1550 Bug 16005: Hovering in the breadcrumbs causes jumpy behavior
1551 http://bugs.webkit.org/show_bug.cgi?id=16005
1553 Hovering over cumbs no longer exposes new crumbs. Clicking on a collapsed
1554 crumb will expose as many hidden crumbs as possible to the user. Also crumbs
1555 that have ID attributes will compact to the ID over the tag name.
1557 * page/inspector/DocumentPanel.js:
1559 2007-11-15 Anders Carlsson <andersca@apple.com>
1563 Make the VoidCallback DOM interface behave more like our other DOM interfaces.
1565 * bindings/js/JSCustomVoidCallback.h: Added.
1566 * bindings/js/JSCustomVoidCallback.cpp: Added.
1567 (WebCore::JSCustomVoidCallback::JSCustomVoidCallback):
1568 (WebCore::JSCustomVoidCallback::handleEvent):
1569 VoidCallback implementation that wraps a JS object.
1571 (WebCore::toVoidCallback):
1572 New method that creates a VoidCallback implementation given a JS object.
1574 * bindings/scripts/CodeGeneratorJS.pm:
1575 Specify that VoidCallback can fail conversion and add a custom conversion function.
1577 * html/HTMLMediaElement.cpp:
1578 (WebCore::HTMLMediaElement::movieCuePointReached):
1579 Call handleEvent on the callback.
1581 (WebCore::HTMLMediaElement::removeCuePoint):
1582 Comment out parts of this method, it has already been removed in the HTML5 spec and it relies
1583 on overriding VoidCallback equality.
1585 * html/VoidCallback.cpp: Removed.
1587 * html/VoidCallback.h:
1588 (WebCore::VoidCallback::VoidCallback):
1589 (WebCore::VoidCallback::~VoidCallback):
1590 Make this an abstract class with a pure virtual handleEvent method.
1592 2007-11-15 Adam Roben <aroben@apple.com>
1594 Fix <rdar://5485108> Type-select while a <select> menu is open doesn't work
1596 There were two things broken here:
1597 - WebView now requires a WM_CHAR message to be sent before it will
1598 create a keyboard event with a charCode, but we were only sending
1600 - The popup menu was not updating its focused index when the
1601 <select> element's selectedIndex changed.
1605 * platform/win/PopupMenuWin.cpp:
1606 (WebCore::PopupMenu::updateFromElement): Update the focused index from
1607 the client's selected index.
1608 (WebCore::PopupWndProc): When we receive a WM_CHAR message for a
1609 printable character, manufacture a WM_KEYDOWN message for it and post
1610 both that and the current WM_CHAR message to the WebView.
1612 2007-11-15 Brady Eidson <beidson@apple.com>
1616 * storage/DatabaseTracker.cpp:
1617 (WebCore::DatabaseTracker::fullPathForDatabase):
1618 (WebCore::DatabaseTracker::databaseNamesForOrigin):
1620 2007-11-15 Brady Eidson <beidson@apple.com>
1622 Reviewed by John and Sam
1624 Stubbing out everything required for a WebKit API for databases
1626 Biggest change in WebCore is that we passed around SecurityOriginData as the representation
1627 of a SecurityOrigin, instead of a String or a SecurityOrigin itself (which is an opaque object
1628 that has a different purpose besides just hanging on to the data)
1631 * WebCore.xcodeproj/project.pbxproj:
1633 * platform/SecurityOrigin.cpp:
1634 * platform/SecurityOrigin.h:
1635 * platform/SecurityOriginData.h: Added. Simple object to encapsulate the 3
1636 pieces of data in the SecurityOrigin tuple
1637 (WebCore::SecurityOriginData::SecurityOriginData):
1638 (WebCore::SecurityOriginData::protocol):
1639 (WebCore::SecurityOriginData::host):
1640 (WebCore::SecurityOriginData::port):
1641 (WebCore::SecurityOriginData::toString): Simple concatenation of the 3 components,
1644 * storage/Database.cpp:
1645 (WebCore::Database::Database): Use SecurityOriginData instead
1647 * storage/DatabaseTracker.cpp:
1648 (WebCore::DatabaseTracker::fullPathForDatabase):
1649 (WebCore::DatabaseTracker::databaseNamesForOrigin):
1650 (WebCore::DatabaseTracker::deleteDatabasesWithOrigin):
1651 (WebCore::DatabaseTracker::deleteDatabase):
1652 * storage/DatabaseTracker.h:
1654 * storage/DatabaseTrackerClient.h: Added. For dispatching notifications up to WebKit
1655 (WebCore::DatabaseTrackerClient::~DatabaseTrackerClient):2007-11-15 Jon Honeycutt <jhoneycutt@apple.com>
1657 2007-11-15 Jon Honeycutt <jhoneycutt@apple.com>
1661 NP_ASFILEONLY streams should not buffer data in m_deliveryData.
1663 * plugins/win/PluginStreamWin.cpp:
1664 (WebCore::PluginStreamWin::didReceiveData):
1666 2007-11-15 Justin Garcia <justin.garcia@apple.com>
1668 Reviewed by Adele Peterson.
1670 <rdar://problem/5497643> Crash at Node::isDescendantOf when switching out of Edit HTML Source mode
1672 A textarea that contained the selection was removed but the selection wasn't cleared,
1673 and we'd crash in code that assumed a valid, in-document selection.
1675 * editing/SelectionController.cpp:
1676 (WebCore::removingNodeRemovesPosition): Clear the selection if the node being removed is the
1677 shadowAncestorNode of the node that contains the position, not just if the node being removed
1678 contains that shadowAncestorNode.
1680 2007-11-15 Nikolas Zimmermann <zimmermann@kde.org>
1684 Fix logic error: calculateGlyphBoundaries takes RTL text into account itself, no need to adjust offsets before.
1686 * rendering/SVGInlineTextBox.cpp:
1687 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
1688 (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
1690 2007-11-15 Anders Carlsson <andersca@apple.com>
1694 <rdar://problem/5562470>
1695 openDatabase does not work when the version string is empty
1697 If the string is empty, pass a real empty string to sqlite3_bind_text16.
1699 * platform/sql/SQLiteStatement.cpp:
1700 (WebCore::SQLiteStatement::bindText):
1702 2007-11-15 Anders Carlsson <andersca@apple.com>
1706 Get rid of SQLiteStatement::bindText and rename bindText16 to bindText.
1707 Remove the copy parameter from bindText and bindBlob and always copy passed in data instead.
1709 * loader/icon/IconDatabase.cpp:
1710 (WebCore::IconDatabase::setIconIDForPageURLInSQLDatabase):
1711 (WebCore::IconDatabase::removePageURLFromSQLDatabase):
1712 (WebCore::IconDatabase::getIconIDForIconURLFromSQLDatabase):
1713 (WebCore::IconDatabase::addIconURLToSQLDatabase):
1714 (WebCore::IconDatabase::getImageDataForIconURLFromSQLDatabase):
1715 (WebCore::IconDatabase::writeIconSnapshotToSQLDatabase):
1716 * platform/sql/SQLiteStatement.cpp:
1717 (WebCore::SQLiteStatement::prepare):
1718 * platform/sql/SQLiteStatement.h:
1719 * storage/Database.cpp:
1720 (WebCore::setTextValueInDatabase):
1721 * storage/DatabaseTracker.cpp:
1722 (WebCore::DatabaseTracker::fullPathForDatabase):
1723 (WebCore::DatabaseTracker::databaseNamesForOrigin):
1724 (WebCore::DatabaseTracker::addDatabase):
1726 2007-11-14 Brady Eidson <beidson@apple.com>
1728 Rubberstamped by Sam
1730 * platform/SecurityOrigin.h: Lets make this an unsigned short and *not* rule out half the possible ports?
1732 2007-11-14 Alexey Proskuryakov <ap@webkit.org>
1734 Reviewed by Justin Garcia.
1736 http://bugs.webkit.org/show_bug.cgi?id=15781
1737 REGRESSION: Ligatures fail to form when typing in Devanagari (because WebKit can't handle
1738 a marked range that covers half of a composed character sequence)
1740 Test: platform/mac/editing/input/devanagari-ligature.html
1742 This fix is somewhat of a hack, as it asks editing commands to work with invalid selections.
1743 However, this is not entirely new for them, as Roman accents are typed in a similar manner.
1745 In the future, we probably want to make commands work with ranges (or Positions explicitly).
1747 * editing/Editor.cpp:
1748 (WebCore::Editor::selectComposition): Force selection to composition range.
1749 * editing/InsertTextCommand.cpp:
1750 (WebCore::InsertTextCommand::input): Force ending selection to inserted text range.
1752 2007-11-14 Beth Dakin <bdakin@apple.com>
1756 Fix for <rdar://problem/5540855> REGRESSION: Combination of client-
1757 side image map and <a> tag is not working properly (15522)
1759 * html/HTMLMapElement.cpp:
1760 (WebCore::HTMLMapElement::checkDTD): Allow <map> to have both block
1761 and inline children rather than just block children. This matches
1764 2007-11-14 Justin Garcia <justin.garcia@apple.com>
1766 Reviewed by Alexey Proskuryakov.
1768 <rdar://problem/5546763> CrashTracer: [USER] 362 crashes at WebCore::DeleteSelectionCommand::mergeParagraphs
1770 * editing/DeleteSelectionCommand.cpp:
1771 (WebCore::DeleteSelectionCommand::handleGeneralDelete):
1772 Removed an irrelevant FIXME.
1773 (WebCore::DeleteSelectionCommand::mergeParagraphs): If the block that contained the end of the selection
1774 hasn't been removed but has been emptied by deletion, we would to try and fail to create a VisiblePosition
1775 inside that block, which could lead to a crash. If that happens, there's no content in the block to move,
1776 so just remove the block and return.
1777 Preserve m_needPlaceholder during the call to moveParagraphs, since it may change it and since it does
1778 its own placeholder insertion when necessary.
1779 (WebCore::DeleteSelectionCommand::doApply): No need to check m_needPlaceholder before calling mergeParagraphs,
1780 because it handles preserving m_needPlaceholder when it calls moveParagraphs.
1782 2007-11-14 Timothy Hatcher <timothy@apple.com>
1786 Bug 14380: Long DOM ancestry breadcrumb lists get cut off
1787 http://bugs.webkit.org/show_bug.cgi?id=14380
1789 The breadcumbs will now be compacted and collapsed if there isn't enough room
1790 to show everything. The collapsing algorithm always affects the crumbs that
1791 are farthest away from the selected or hovered crumb first.
1793 * page/inspector/DocumentPanel.js:
1794 * page/inspector/inspector.css:
1796 2007-11-14 Anders Carlsson <andersca@apple.com>
1798 Use the correct include path.
1800 * platform/Cursor.h:
1801 * plugins/win/PluginPackageWin.h:
1802 * plugins/win/PluginStreamWin.h:
1804 2007-11-13 Brady Eidson <beidson@apple.com>
1808 http://bugs.webkit.org/show_bug.cgi?id=15976 - ASSERT/crash when SQLTransactionCallback throws an exception
1810 * storage/SQLTransaction.cpp:
1811 (WebCore::SQLTransaction::deliverTransactionCallback): Make a transaction error for the case where the
1812 SQLTransactionCallback fails
1813 (WebCore::SQLTransaction::deliverTransactionErrorCallback): Don't assert on the error callback, but null check it
1814 and make the commit/rollback decision accordingly
1816 2007-11-13 Oliver Hunt <oliver@apple.com>
1820 <rdar://problem/5365030> calling dataWithPDFInsideRect on an SVG with a gradient crashes (14780)
1822 When drawing directly to PDF CG may delay the use of the gradient function until outside our
1823 standard drawing path, which in turn could let us invalidate the caches before they were used.
1825 To work around this we now store the cached stops in a RefCounted object, so that we can ensure
1826 that cache exists as long as required.
1828 * platform/graphics/svg/SVGPaintServerGradient.cpp:
1829 (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
1830 * platform/graphics/svg/SVGPaintServerGradient.h:
1831 * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
1832 (WebCore::cgGradientCallback):
1833 (WebCore::CGShadingRefForLinearGradient):
1834 (WebCore::CGShadingRefForRadialGradient):
1835 (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
1837 2007-11-13 Anders Carlsson <andersca@apple.com>
1841 * platform/Cursor.h:
1842 * plugins/win/PluginPackageWin.h:
1843 * plugins/win/PluginStreamWin.h:
1845 2007-11-13 Geoffrey Garen <ggaren@apple.com>
1847 Reviewed by Anders Carlsson.
1849 Renamed Shared to RefCounted.
1851 * ForwardingHeaders/wtf/RefCounted.h: Copied from WebCore/ForwardingHeaders/wtf/Shared.h.
1852 * ForwardingHeaders/wtf/Shared.h: Removed.
1853 * bindings/js/JSSVGPODTypeWrapper.h:
1854 * css/CSSFontFace.h:
1855 * css/CSSRuleList.h:
1860 * css/StyleSheetList.h:
1863 * dom/DOMImplementation.h:
1865 * dom/EventListener.h:
1866 * dom/NamedNodeMap.h:
1868 * dom/NodeFilterCondition.h:
1870 * dom/QualifiedName.h:
1872 * dom/RangeException.h:
1873 * dom/RegisteredEventListener.h:
1875 * editing/EditCommand.h:
1876 * history/BackForwardList.h:
1877 * history/CachedPage.h:
1878 * history/HistoryItem.cpp:
1879 (WebCore::HistoryItem::HistoryItem):
1880 * history/HistoryItem.h:
1881 * html/CanvasGradient.h:
1882 * html/CanvasPattern.h:
1883 * html/CanvasRenderingContext2D.h:
1884 * html/CanvasStyle.h:
1885 * html/HTMLCollection.h:
1886 * html/MediaError.h:
1887 * html/TimeRanges.h:
1888 * html/VoidCallback.h:
1889 * ksvg2/css/SVGRenderStyle.cpp:
1890 (WebCore::SVGRenderStyle::SVGRenderStyle):
1891 * ksvg2/css/SVGRenderStyle.h:
1892 * ksvg2/css/SVGRenderStyleDefs.cpp:
1893 (StyleFillData::StyleFillData):
1894 (StyleStrokeData::StyleStrokeData):
1895 (StyleStopData::StyleStopData):
1896 (StyleTextData::StyleTextData):
1897 (StyleClipData::StyleClipData):
1898 (StyleMaskData::StyleMaskData):
1899 (StyleMarkerData::StyleMarkerData):
1900 (StyleMiscData::StyleMiscData):
1901 * ksvg2/css/SVGRenderStyleDefs.h:
1902 * ksvg2/svg/SVGAngle.cpp:
1903 (WebCore::SVGAngle::SVGAngle):
1904 * ksvg2/svg/SVGAngle.h:
1905 * ksvg2/svg/SVGAnimatedTemplate.h:
1906 * ksvg2/svg/SVGElementInstanceList.h:
1907 * ksvg2/svg/SVGException.h:
1908 * ksvg2/svg/SVGList.h:
1909 * ksvg2/svg/SVGPathSeg.h:
1910 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
1911 (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
1912 * ksvg2/svg/SVGPreserveAspectRatio.h:
1913 * ksvg2/svg/SVGRenderingIntent.h:
1914 * ksvg2/svg/SVGTransform.h:
1915 * ksvg2/svg/SVGUnitTypes.h:
1916 * loader/DocumentLoader.h:
1917 * loader/FormState.h:
1918 * loader/ResourceLoader.h:
1919 * loader/TextResourceDecoder.h:
1920 * loader/icon/IconRecord.h:
1923 * page/DOMSelection.h:
1927 * page/InspectorController.cpp:
1930 * platform/ArrayImpl.h:
1931 * platform/CString.h:
1932 * platform/Cursor.h:
1933 * platform/DeprecatedValueListImpl.cpp:
1934 (WebCore::DeprecatedValueListImpl::Private::Private):
1935 * platform/FileChooser.h:
1936 * platform/FontFallbackList.h:
1937 * platform/FontFamily.cpp:
1938 (WebCore::FontFamily::FontFamily):
1939 * platform/FontFamily.h:
1940 * platform/FontSelector.h:
1941 * platform/GlyphPageTreeNode.h:
1942 * platform/PopupMenu.h:
1943 * platform/RegularExpression.cpp:
1944 * platform/ScrollBar.h:
1945 * platform/SharedBuffer.h:
1946 * platform/StringImpl.h:
1947 * platform/graphics/Icon.h:
1948 * platform/graphics/svg/SVGResource.h:
1949 * platform/network/FormData.cpp:
1950 (WebCore::FormData::FormData):
1951 * platform/network/FormData.h:
1952 * platform/network/ResourceHandle.h:
1953 * platform/network/ResourceHandleClient.h:
1954 * rendering/RenderStyle.cpp:
1955 (WebCore::StyleSurroundData::StyleSurroundData):
1956 (WebCore::StyleBoxData::StyleBoxData):
1957 (WebCore::StyleVisualData::StyleVisualData):
1958 (WebCore::StyleBackgroundData::StyleBackgroundData):
1959 (WebCore::StyleMarqueeData::StyleMarqueeData):
1960 (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
1961 (WebCore::StyleMultiColData::StyleMultiColData):
1962 (WebCore::StyleTransformData::StyleTransformData):
1963 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1964 (WebCore::StyleRareInheritedData::StyleRareInheritedData):
1965 (WebCore::StyleInheritedData::StyleInheritedData):
1966 * rendering/RenderStyle.h:
1967 * rendering/SVGCharacterLayoutInfo.h:
1968 (WebCore::SVGCharOnPath::SVGCharOnPath):
1969 * storage/SQLResultSetRowList.h:
1971 * xml/XMLHttpRequest.h:
1972 * xml/XMLSerializer.h:
1973 * xml/XPathEvaluator.h:
1974 * xml/XPathExpression.h:
1975 * xml/XPathNSResolver.h:
1976 * xml/XPathResult.h:
1978 * xml/XSLTProcessor.h:
1980 2007-11-13 Brady Eidson <beidson@apple.com>
1982 Reviewed by Mark Rowe
1984 Remove errantly added files, and fix the idl (for reference's sake)
1986 * storage/JSCustomSQLStatementCallback.h: Removed.
1987 * storage/JSCustomSQLStatementErrorCallback.h: Removed.
1988 * storage/JSCustomSQLTransactionCallback.h: Removed.
1989 * storage/JSCustomSQLTransactionErrorCallback.h: Removed.
1990 * storage/SQLStatementCallback.idl:
1992 2007-11-13 Adam Roben <aroben@apple.com>
1994 Fix a bug and improve upon Brady's fix
1998 * bindings/js/JSSQLTransactionCustom.cpp:
1999 (WebCore::JSSQLTransaction::executeSql): Made the code a little
2000 clearer and more correct.
2001 * loader/icon/IconDatabase.cpp: Put parentheses around the expansion
2002 of IS_ICON_SYNC_THREAD() so that ASSERT_NOT_SYNC_THREAD() does the
2003 comparison it meant to.
2005 2007-11-13 Sam Weinig <sam@webkit.org>
2007 Fix Qt and Gtk builds.
2009 * WebCore.pro: Remove non-generated idl files.
2011 2007-11-13 Mark Rowe <mrowe@apple.com>
2013 Remove removed file from the project.
2017 2007-11-13 Brady Eidson <beidson@apple.com>
2021 * bindings/js/JSSQLTransactionCustom.cpp:
2022 (WebCore::JSSQLTransaction::executeSql):
2024 2007-11-13 Adam Roben <aroben@apple.com>
2026 Add WindowMessageBroadcaster
2028 This class is used to listen in on messages sent to HWNDs. Multiple
2029 WindowMessageListeners can be notified about messages sent to a single
2030 HWND, and one WindowMessageListener can listen to messages from
2035 * WebCore.vcproj/WebCore.vcproj: Added new files to project.
2036 * platform/win/WindowMessageBroadcaster.cpp: Added.
2037 (WebCore::instancesMap): Static helper.
2038 (WebCore::WindowMessageBroadcaster::addListener): Registers a listener
2039 for a particular HWND.
2040 (WebCore::WindowMessageBroadcaster::removeListener): Removes a
2041 listener for a particular HWND.
2042 (WebCore::WindowMessageBroadcaster::WindowMessageBroadcaster):
2043 (WebCore::WindowMessageBroadcaster::~WindowMessageBroadcaster):
2044 (WebCore::WindowMessageBroadcaster::destroy): Removes this broadcaster
2045 from the instancesMap, removes all of its listeners, unsubclasses the
2046 window, and deletes the broadcaster.
2047 (WebCore::WindowMessageBroadcaster::unsubclassWindow): Unsubclasses
2048 the window (which means that SubclassedWndProc won't be called again
2050 (WebCore::WindowMessageBroadcaster::SubclassedWndProc): Notifies all
2051 the listeners about every message sent to the HWND
2052 * platform/win/WindowMessageBroadcaster.h: Added.
2053 (WebCore::WindowMessageBroadcaster::listeners):
2054 (WebCore::WindowMessageBroadcaster::originalWndProc):
2055 * platform/win/WindowMessageListener.h: Added.
2057 2007-11-13 Geoffrey Garen <ggaren@apple.com>
2059 Reviewed by Sam Weinig.
2061 Moved Shared.h into wtf so it could be used in more places. Retained
2062 TreeShared, but moved it to its own file, TreeShared.h.
2064 * ForwardingHeaders/wtf/Shared.h: Added.
2065 * WebCore.xcodeproj/project.pbxproj:
2066 * bindings/js/JSSVGPODTypeWrapper.h:
2067 * css/CSSFontFace.h:
2068 * css/CSSRuleList.h:
2073 * css/StyleSheetList.h:
2075 * dom/DOMImplementation.h:
2077 * dom/EventListener.h:
2078 * dom/NamedNodeMap.h:
2079 * dom/NodeFilterCondition.h:
2082 * dom/RangeException.h:
2083 * dom/RegisteredEventListener.h:
2085 * history/BackForwardList.h:
2086 * history/CachedPage.h:
2087 * history/HistoryItem.h:
2088 * html/CanvasGradient.h:
2089 * html/CanvasPattern.h:
2090 * html/HTMLCollection.h:
2091 * html/MediaError.h:
2092 * html/TimeRanges.h:
2093 * html/VoidCallback.h:
2094 * ksvg2/css/SVGRenderStyleDefs.h:
2095 * ksvg2/svg/SVGAnimatedTemplate.h:
2096 * ksvg2/svg/SVGElementInstanceList.h:
2097 * ksvg2/svg/SVGList.h:
2098 * ksvg2/svg/SVGPathSeg.h:
2099 * ksvg2/svg/SVGPreserveAspectRatio.h:
2100 * ksvg2/svg/SVGRenderingIntent.h:
2101 * ksvg2/svg/SVGTransform.h:
2102 * ksvg2/svg/SVGUnitTypes.h:
2103 * loader/DocumentLoader.h:
2104 * loader/FormState.h:
2105 * loader/ResourceLoader.h:
2106 * loader/TextResourceDecoder.h:
2107 * loader/icon/IconRecord.h:
2110 * page/DOMSelection.h:
2113 * page/InspectorController.cpp:
2116 * platform/ArrayImpl.h:
2117 * platform/CString.h:
2118 * platform/DeprecatedValueListImpl.cpp:
2119 * platform/FontFallbackList.h:
2120 * platform/FontFamily.h:
2121 * platform/FontSelector.h:
2122 * platform/GlyphPageTreeNode.h:
2123 * platform/PopupMenu.h:
2124 * platform/RegularExpression.cpp:
2125 * platform/ScrollBar.h:
2126 * platform/Shared.h: Removed.
2127 * platform/SharedBuffer.h:
2128 * platform/StringImpl.h:
2129 * platform/graphics/Icon.h:
2130 * platform/graphics/svg/SVGResource.h:
2131 * platform/network/FormData.h:
2132 * platform/network/ResourceHandleClient.h:
2133 * rendering/RenderStyle.h:
2134 * rendering/SVGCharacterLayoutInfo.h:
2135 * storage/SQLResultSetRowList.h:
2137 * xml/XMLSerializer.h:
2138 * xml/XPathEvaluator.h:
2139 * xml/XPathExpression.h:
2140 * xml/XPathNSResolver.h:
2141 * xml/XPathResult.h:
2143 2007-11-13 Brady Eidson <beidson@apple.com>
2145 JS bindings by Anders, reviewed by Brady
2146 WebCore changes by Brady, reviewed by Anders and Tim
2148 Adapt to the new iteration of the HTML5 client-side storage spec.
2150 Based largely on implementation feedback we generated in landing our first version of this API and also
2151 on the input of others in the community, the database spec went through a large overhaul that addresses
2152 many concerns. Amongst other changes/improvements:
2153 - SQLTransaction object is added and all transactions are explicit. In addition, since the API manages
2154 transactions explicitly, transaction-related language in SQL statements is disallowed
2155 - executeSql() is now on a transaction object instead of the database object.
2156 - Database.changeVersion() now takes place within the context of a transaction. Therefore the version
2157 change can be atomic along with the statements that modify the DB schema
2159 Most of the logic now takes place during the "transaction steps," which the specification clearly lays out
2160 as a chain of events on the SQLTransaction object where processing is handed off between being processed
2161 asynchronously and calling back up to javascript. To accomplish this voodoo, SQLTransaction has a series of
2162 methods that roughly match up with the "transaction steps" and it keeps a pointer to the next step.
2164 * DerivedSources.make:
2165 * WebCore.xcodeproj/project.pbxproj:
2167 * bindings/js/JSDatabaseCustom.cpp:
2168 (WebCore::JSDatabase::changeVersion): Adapt to the new API
2169 (WebCore::JSDatabase::transaction): Added
2171 * bindings/js/JSSQLTransactionCustom.cpp: Added.
2172 (WebCore::JSSQLTransaction::executeSql): Added
2174 * page/DOMWindow.cpp:
2175 (WebCore::DOMWindow::openDatabase): Add the new arguments
2177 * page/DOMWindow.idl:
2179 * page/inspector/DatabasePanel.js: Use the new API
2181 * storage/ChangeVersionWrapper.cpp: Added. Implementation of "SQLTransactionWrapper" that enforces
2182 changing the version of the database
2183 (WebCore::ChangeVersionWrapper::ChangeVersionWrapper):
2184 (WebCore::ChangeVersionWrapper::performPreflight):
2185 (WebCore::ChangeVersionWrapper::performPostflight):
2186 * storage/ChangeVersionWrapper.h: Added.
2187 (WebCore::ChangeVersionWrapper::sqlError):
2189 * storage/Database.cpp: Removed the "main thread" and "background thread" sqlite handles as all sqlite operations can now
2190 happen solely on the background thread - most of these changes result from that change
2191 (WebCore::Database::Database): Removed an obsolete FIXME
2192 (WebCore::Database::openAndVerifyVersion):
2193 (WebCore::Database::getVersionFromDatabase):
2194 (WebCore::Database::setVersionInDatabase):
2195 (WebCore::Database::versionMatchesExpected): Atomically guarantee that the current version and expected version are the same
2196 (WebCore::Database::performOpenAndVerify):
2197 (WebCore::Database::performTransactionStep): Added, as a hook for the DatabaseTransactionTask on the DatabaseThread
2198 (WebCore::Database::changeVersion): Changed for the new API from JS
2199 (WebCore::Database::transaction): Added, for the new API from JS
2200 (WebCore::Database::scheduleTransaction): Add a transaction to this Database's transaction queue
2201 (WebCore::Database::scheduleTransactionStep): Schedule the current transaction to be called on the background thread
2202 (WebCore::Database::scheduleTransactionCallback): Schedule the current transaction to perform a callback on the main thread
2203 (WebCore::Database::performGetTableNames):
2204 (WebCore::Database::deliverAllPendingCallbacks):
2205 (WebCore::Database::deliverPendingCallback):
2206 (WebCore::Database::setExpectedVersion):
2207 * storage/Database.h:
2208 * storage/Database.idl:
2210 * storage/DatabaseTask.cpp: Changed DatabaseTask to create a mutex on demand, and use the existence of that mutex
2211 to replace the m_synchronous flag
2212 (WebCore::DatabaseTask::performTask):
2213 (WebCore::DatabaseTask::lockForSynchronousScheduling):
2214 (WebCore::DatabaseTask::waitForSynchronousCompletion):
2215 (WebCore::DatabaseTransactionTask::DatabaseTransactionTask):
2216 * storage/DatabaseTask.h:
2218 * storage/SQLError.h: New API object
2220 * storage/SQLResultSet.cpp:
2221 (WebCore::SQLResultSet::SQLResultSet): Small changes to the API object
2222 * storage/SQLResultSet.h:
2223 * storage/SQLResultSet.idl:
2225 * storage/SQLStatement.cpp: Added.
2226 (WebCore::SQLStatement::SQLStatement):
2227 (WebCore::SQLStatement::execute): Actually execute the sql statement on the SQLiteDatabase if it's still valid
2228 (WebCore::SQLStatement::setVersionMismatchedError): Flag this statement as bad before it even starts in case
2229 of an actual version vs. expected version mismatch
2230 (WebCore::SQLStatement::performCallback): Call the right callback (SQLStatement or SQLStatementError) for this statement
2231 * storage/SQLStatement.h: Added.
2232 (WebCore::SQLStatement::hasStatementCallback):
2233 (WebCore::SQLStatement::hasStatementErrorCallback):
2234 (WebCore::SQLStatement::sqlError): Get the error for this statement, if any
2236 * storage/SQLTransaction.cpp: Added.
2237 (WebCore::SQLTransaction::SQLTransaction):
2238 (WebCore::SQLTransaction::executeSQL): Entry point for the API from JS
2239 (WebCore::SQLTransaction::enqueueStatement): Add a new statement onto the queue
2240 (WebCore::SQLTransaction::performNextStep): Call the method for the next step
2241 (WebCore::SQLTransaction::performPendingCallback): Call the method for the pending callback
2242 (WebCore::SQLTransaction::openTransactionAndPreflight): Open a transaction to the database and preflight
2243 using the SQLTransactionWrapper, if any
2244 (WebCore::SQLTransaction::deliverTransactionCallback): Deliver the transaction callback to the javascript thread
2245 (WebCore::SQLTransaction::scheduleToRunStatements): Convinience to schedule this transaction on the database thread
2246 and make runStatements() the next step
2247 (WebCore::SQLTransaction::runStatements): Start running the sql statements queued up for this transaction
2248 (WebCore::SQLTransaction::getNextStatement): Bring the next statement off the queue
2249 (WebCore::SQLTransaction::runCurrentStatement): Execute the current statement
2250 (WebCore::SQLTransaction::deliverStatementCallback): Deliver the SQLStatementCallback for this statement
2251 (WebCore::SQLTransaction::postflightAndCommit): Postflight the transaction using SQLTransactionWrapper and commit it
2252 (WebCore::SQLTransaction::handleTransactionError): Make the right call for any error that occurred on the Transaction
2253 (WebCore::SQLTransaction::deliverTransactionErrorCallback): Deliver the SQLTransactionErrorCallback
2254 (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): Either do a final commit or rollback to cleanup the
2255 transaction after it error'ed out
2256 * storage/SQLTransaction.h:
2257 (WebCore::SQLTransactionWrapper::~SQLTransactionWrapper):
2258 (WebCore::SQLTransaction::database):
2259 * storage/SQLTransaction.idl:
2261 The following were made obsolete by the new version of the API:
2262 * bindings/js/JSCustomSQLCallback.cpp: Removed.
2263 * bindings/js/JSCustomSQLCallback.h: Removed.
2264 * bindings/js/JSCustomVersionChangeCallback.cpp: Removed.
2265 * bindings/js/JSCustomVersionChangeCallback.h: Removed.
2266 * storage/DatabaseCallback.cpp: Removed.
2267 * storage/DatabaseCallback.h: Removed.
2268 * storage/SQLCallback.h: Removed.
2269 * storage/SQLCallback.idl: Removed.
2270 * storage/VersionChangeCallback.h: Removed.
2271 * storage/VersionChangeCallback.idl: Removed.
2273 2007-11-13 Dan Bernstein <mitz@apple.com>
2275 Reviewed by Beth Dakin.
2277 - fix <rdar://problem/5551163> REGRESSION: Cursor does not change to arrow on "X" button in google maps, making it hard to click
2279 * css/html4.css: Added a 'cursor: auto' rule for links.
2280 * manual-tests/link-cursor-auto.html: Added.
2282 2007-11-13 Dan Bernstein <mitz@apple.com>
2284 Reviewed by Beth Dakin.
2286 - fix <rdar://problem/5516272> Reproducible crash in RenderObject::setStyle involving going Back from a non-HTML document (Bookmarks view, PDF view)
2288 The root cause for the crash is that when a non-HTML view enters the
2289 frame, the frame's document pointer keeps pointing at the last HTML-type
2290 document it contained. This patch does not address the root cause, but
2291 makes changes to account for that condition.
2293 * loader/FrameLoader.cpp:
2294 (WebCore::FrameLoader::receivedMainResourceError): Do not change the
2295 frame's current document's page cache state here.
2296 (WebCore::FrameLoader::invalidateCurrentItemCachedPage): If the frame's
2297 current document is in fact the history item being invalidated, then
2298 set its page cache state here.
2300 2007-11-12 Antti Koivisto <antti@apple.com>
2304 Fix that 'timeupdate' and 'waiting' events were never dispatched.
2306 Add explicit m_paused attribute instead of trying to derive paused state from
2307 underlying media. Call updatePlayState() to start/stop media playback
2308 when any attribute that affects active playback state changes. This matches
2311 Test: http/tests/media/video-play-stall.html
2313 * html/HTMLMediaElement.cpp:
2314 (WebCore::HTMLMediaElement::HTMLMediaElement):
2315 (WebCore::HTMLMediaElement::setReadyState):
2316 (WebCore::HTMLMediaElement::paused):
2317 (WebCore::HTMLMediaElement::play):
2318 (WebCore::HTMLMediaElement::pause):
2319 (WebCore::HTMLMediaElement::checkIfSeekNeeded):
2320 (WebCore::HTMLMediaElement::movieDidEnd):
2321 (WebCore::HTMLMediaElement::updatePlayState):
2322 * html/HTMLMediaElement.h:
2324 2007-11-13 John Sullivan <sullivan@apple.com>
2328 removed recently-added PreferredType concept; we found a better way to do what
2329 ths was accomplishing
2331 * bridge/WindowFeatures.h:
2332 (WebCore::WindowFeatures::WindowFeatures):
2333 removed definition of PreferredType
2335 * page/ContextMenuController.cpp:
2336 (WebCore::openNewWindow):
2337 removed use of PreferredType
2339 2007-11-12 Alexey Proskuryakov <ap@webkit.org>
2343 http://bugs.webkit.org/show_bug.cgi?id=15954
2344 Move DOM Selection operations out of SelectionController
2346 No change in functionality.
2348 * editing/SelectionController.cpp:
2349 (WebCore::SelectionController::setSelectedRange):
2350 * editing/SelectionController.h:
2351 * page/DOMSelection.cpp:
2352 (WebCore::DOMSelection::anchorNode):
2353 (WebCore::DOMSelection::baseNode):
2354 (WebCore::DOMSelection::anchorOffset):
2355 (WebCore::DOMSelection::baseOffset):
2356 (WebCore::DOMSelection::focusNode):
2357 (WebCore::DOMSelection::extentNode):
2358 (WebCore::DOMSelection::focusOffset):
2359 (WebCore::DOMSelection::extentOffset):
2360 (WebCore::DOMSelection::isCollapsed):
2361 (WebCore::DOMSelection::type):
2362 (WebCore::DOMSelection::rangeCount):
2363 (WebCore::DOMSelection::collapse):
2364 (WebCore::DOMSelection::collapseToEnd):
2365 (WebCore::DOMSelection::collapseToStart):
2366 (WebCore::DOMSelection::empty):
2367 (WebCore::DOMSelection::setBaseAndExtent):
2368 (WebCore::DOMSelection::setPosition):
2369 (WebCore::DOMSelection::modify):
2370 (WebCore::DOMSelection::extend):
2371 (WebCore::DOMSelection::getRangeAt):
2372 (WebCore::DOMSelection::removeAllRanges):
2373 (WebCore::DOMSelection::addRange):
2374 (WebCore::DOMSelection::deleteFromDocument):
2375 (WebCore::DOMSelection::containsNode):
2376 (WebCore::DOMSelection::selectAllChildren):
2377 (WebCore::DOMSelection::toString):
2378 * page/DOMSelection.h:
2379 Moved all DOM API methods to DOMSelection; changed SelectionController::setSelectedRange()
2380 to return its result directly instead of via an ExceptionCode that no caller wanted.
2382 * editing/Editor.cpp:
2383 (WebCore::Editor::deleteRange):
2384 (WebCore::Editor::removeFormattingAndStyle):
2385 (WebCore::Editor::selectComposition):
2386 (WebCore::Editor::setComposition):
2387 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
2388 Adapted for SelectionController::setSelectedRange() now returning a bool.
2389 SelectionController::toString() is no longer avasilable, use plainText() explicitly.
2391 * WebCore.base.exp: Changed SelectionController::setSelectedRange() signature.
2393 2007-11-12 Dan Bernstein <mitz@apple.com>
2395 Reviewed by Darin Adler.
2397 - <http://bugs.webkit.org/show_bug.cgi?id=15890>
2398 Most of www.aol.com still redraws unnecessarily when headline/photo section changes
2400 Test: fast/repaint/invisible-objects.html
2402 Avoid repainting invisible blocks if they are enclosed in a layer that
2403 contains no visible objects.
2405 * rendering/RenderBlock.cpp:
2406 (WebCore::RenderBlock::layoutBlock):
2407 * rendering/RenderBox.cpp:
2408 (WebCore::RenderBox::absoluteClippedOverflowRect):
2410 2007-11-12 Timothy Hatcher <timothy@apple.com>
2412 Reviewed by Mark Rowe.
2414 Prevent selecting a word in the breadcrumb or the styles section when double
2415 clicking on a DOM node in the outline tree.
2417 * page/inspector/DocumentPanel.js: Call preventDefault() when a mousedown event
2418 with a detail of 2 or higher comes in. This prevents the selection.
2419 * page/inspector/inspector.css: Mark the breadcrumb as user-select: none.
2421 2007-11-12 Oliver Hunt <oliver@apple.com>
2425 <rdar://problem/5537289> REGRESSION: Dragging a link or an image from an IFrame causes the page to not respond to clicks afterwards (15460)
2427 EventHandler needs to reset these fields when a drag terminates, otherwise
2428 EventHandler is left in an inconsistent state when a drag is initiated on a
2429 page with multiple frames.
2431 * page/EventHandler.cpp:
2432 (WebCore::EventHandler::cancelDragAndDrop):
2433 (WebCore::EventHandler::performDragAndDrop):
2434 (WebCore::EventHandler::clearDragState):
2435 * page/EventHandler.h:
2437 2007-11-12 Oliver Hunt <oliver@apple.com>
2439 Reviewed by Darin and Antti.
2441 Return behaviour for 0 sized pattern back to what it was prior to r27704
2443 This change in behaviour broke two layout tests in DRT, so correcting it
2444 corrects existing tests.
2446 * platform/graphics/cg/ImageBufferCG.cpp:
2448 2007-11-12 Timothy Hatcher <timothy@apple.com>
2452 <rdar://problem/5268311> REGRESSION (Safari 2-3): Exception thrown when calling -[WebDataSource subresources]
2454 * page/mac/WebCoreFrameBridge.mm:
2455 (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
2456 If the SharedBuffer is null insert an empty NSData instead of nil.
2458 2007-11-12 Darin Adler <darin@apple.com>
2462 - http://bugs.webkit.org/show_bug.cgi?id=15947
2463 speed up page loading a bit by inlining
2465 * loader/FrameLoader.cpp: (WebCore::FrameLoader::isLocationChange):
2466 Factored out the slow case of isScheduledLocationChangePending into this.
2468 * loader/FrameLoader.h:
2469 (WebCore::FrameLoader::isScheduledLocationChangePending): Added an
2470 inline check of the far and away most common case, where m_scheduledRedirection
2471 is 0; the rest is in the isLocationChange function.
2473 2007-11-12 George Staikos <staikos@kde.org>
2477 Extract the text match marker highlight color into RenderTheme instead
2478 of the hardcoded yellow.
2480 * rendering/InlineTextBox.cpp:
2481 (WebCore::InlineTextBox::paintTextMatchMarker):
2482 * rendering/RenderTheme.cpp:
2483 (WebCore::RenderTheme::platformTextSearchHighlightColor):
2484 * rendering/RenderTheme.h:
2486 2007-11-12 Mark Rowe <mrowe@apple.com>
2488 Fix deadlock on launch on the Mac.
2490 * loader/icon/IconDatabase.cpp:
2491 (WebCore::IconDatabase::open): Restore unlock that was mistakenly removed in r27717.
2493 2007-11-12 Justin Haygood <jhaygood@reaktix.com>
2497 http://bugs.webkit.org/show_bug.cgi?id=15955
2498 Reimplement threading functions in IconDatabase and SQLiteDatabase in terms of the threading abstractions
2500 * loader/icon/IconDatabase.cpp:
2501 (WebCore::IconDatabase::open):
2502 (WebCore::IconDatabase::close):
2503 * loader/icon/IconDatabase.h:
2504 * platform/sql/SQLiteDatabase.cpp:
2505 (WebCore::SQLiteDatabase::SQLiteDatabase):
2506 (WebCore::SQLiteDatabase::open):
2507 (WebCore::SQLiteDatabase::close):
2508 * platform/sql/SQLiteDatabase.h:
2510 2007-11-12 Adam Roben <aroben@apple.com>
2514 * config.h: Touch because VS apparently can't figure out which files
2515 depend on ResourceResponse.h.
2516 * WebCore.vcproj/WebCore.vcproj: Add ResourceResponseBase files to
2517 project and remove old ResourceResponse files.
2519 2007-11-12 Julien Chaffraix <julien.chaffraix@gmail.com>
2523 http://bugs.webkit.org/show_bug.cgi?id=15334
2524 Split ResourceResponse into platform specific files
2528 * WebCore.vcproj/WebCore.vcproj:
2529 * WebCore.xcodeproj/project.pbxproj:
2530 * platform/network/ResourceResponse.cpp: Removed.
2531 * platform/network/ResourceResponse.h: Removed.
2532 * platform/network/ResourceResponseBase.cpp: Copied from platform/network/ResourceResponse.cpp.
2533 (WebCore::ResourceResponseBase::asResourceResponse):
2534 (WebCore::ResourceResponseBase::isHTTP):
2535 (WebCore::ResourceResponseBase::url):
2536 (WebCore::ResourceResponseBase::setUrl):
2537 (WebCore::ResourceResponseBase::mimeType):
2538 (WebCore::ResourceResponseBase::setMimeType):
2539 (WebCore::ResourceResponseBase::expectedContentLength):
2540 (WebCore::ResourceResponseBase::setExpectedContentLength):
2541 (WebCore::ResourceResponseBase::textEncodingName):
2542 (WebCore::ResourceResponseBase::setTextEncodingName):
2543 (WebCore::ResourceResponseBase::suggestedFilename):
2544 (WebCore::ResourceResponseBase::setSuggestedFilename):
2545 (WebCore::ResourceResponseBase::httpStatusCode):
2546 (WebCore::ResourceResponseBase::setHTTPStatusCode):
2547 (WebCore::ResourceResponseBase::httpStatusText):
2548 (WebCore::ResourceResponseBase::setHTTPStatusText):
2549 (WebCore::ResourceResponseBase::httpHeaderField):
2550 (WebCore::ResourceResponseBase::setHTTPHeaderField):
2551 (WebCore::ResourceResponseBase::httpHeaderFields):
2552 (WebCore::ResourceResponseBase::isAttachment):
2553 (WebCore::ResourceResponseBase::setExpirationDate):
2554 (WebCore::ResourceResponseBase::expirationDate):
2555 (WebCore::ResourceResponseBase::setLastModifiedDate):
2556 (WebCore::ResourceResponseBase::lastModifiedDate):
2557 (WebCore::ResourceResponseBase::updateResourceResponse):
2558 * platform/network/ResourceResponseBase.h: Copied from platform/network/ResourceResponse.h.
2559 (WebCore::ResourceResponseBase::ResourceResponseBase):
2560 * platform/network/cf/ResourceResponse.h: Added.
2561 (WebCore::ResourceResponse::ResourceResponse):
2562 * platform/network/curl/ResourceResponse.h: Added.
2563 (WebCore::ResourceResponse::ResourceResponse):
2564 (WebCore::ResourceResponse::doUpdateResourceResponse):
2565 * platform/network/mac/ResourceResponse.h: Added.
2566 (WebCore::ResourceResponse::ResourceResponse):
2567 * platform/network/qt/ResourceResponse.h: Added.
2568 (WebCore::ResourceResponse::ResourceResponse):
2569 (WebCore::ResourceResponse::doUpdateResourceResponse):
2571 2007-11-11 Justin Haygood <jhaygood@reaktix.com>
2573 Reviewed by Adam Roben.
2575 http://bugs.webkit.org/show_bug.cgi?id=15939
2576 Adds a currentThread API for use by SQLiteDatabase, etc.
2578 * platform/Threading.h:
2579 * platform/ThreadingNone.cpp:
2580 (WebCore::currentThread):
2581 * platform/gtk/ThreadingGtk.cpp:
2582 (WebCore::identifierByGthreadHandle):
2584 * platform/pthreads/ThreadingPthreads.cpp:
2585 (WebCore::identifierByPthreadHandle):
2586 (WebCore::currentThread):
2588 2007-11-11 Dan Bernstein <mitz@apple.com>
2590 Reviewed by Adam Roben.
2592 - fix http://bugs.webkit.org/show_bug.cgi?id=15942
2593 REGRESSION: Selecting "Edit Html" tab in Blogger causes crash (Assertion failed: isRange())
2595 Test: editing/selection/cleared-by-relayout.html
2597 * editing/Selection.cpp:
2598 (WebCore::Selection::toRange): Check if the selection has been cleared
2601 2007-11-11 Darin Adler <darin@apple.com>
2603 Reviewed by Mark Rowe.
2605 - fix line numbers that were off since my recent patch
2607 * platform/SegmentedString.h:
2608 (WebCore::SegmentedSubstring::SegmentedSubstring): Reversed the sense of m_excludeLineNumbers
2609 and rename it to m_doNotExcludeLineNumbers.
2610 (WebCore::SegmentedSubstring::excludeLineNumbers): Updated.
2611 (WebCore::SegmentedSubstring::doNotExcludeLineNumbers): Added.
2612 (WebCore::SegmentedSubstring::setExcludeLineNumbers): Updated.
2613 (WebCore::SegmentedString::advance): Use doNotExcludeLineNumbers to reverse the sense and fix
2614 the regression, but keep the speediness. I accidentally had removed a ! here.
2616 * platform/SegmentedString.cpp:
2617 (WebCore::SegmentedString::advanceSlowCase): Use doNotExcludeLineNumbers.
2619 2007-11-11 Oliver Hunt <oliver@apple.com>
2623 Fix for <rdar://problem/5585334> numfuzz: integer overflows opening
2624 malformed SVG file in WebCore::ImageBuffer::create. Add protection
2625 against a potential overflow.
2627 * platform/graphics/cg/ImageBufferCG.cpp:
2629 2007-11-11 Antti Koivisto <antti@apple.com>
2633 Fix a bunch of cases where the exception code is checked by the function but is not zeroed first.
2635 * bindings/js/kjs_binding.cpp:
2636 (KJS::setDOMException):
2638 (WebCore::Attr::setPrefix):
2640 (WebCore::Document::createElement):
2642 (WebCore::Element::setPrefix):
2644 (WebCore::Range::setStart):
2645 (WebCore::Range::setEnd):
2646 (WebCore::Range::isPointInRange):
2647 (WebCore::Range::comparePoint):
2648 (WebCore::Range::compareBoundaryPoints):
2649 (WebCore::Range::deleteContents):
2650 (WebCore::Range::processContents):
2651 (WebCore::Range::extractContents):
2652 (WebCore::Range::insertNode):
2653 (WebCore::Range::setStartAfter):
2654 (WebCore::Range::setEndBefore):
2655 (WebCore::Range::setEndAfter):
2656 (WebCore::Range::selectNode):
2657 (WebCore::Range::surroundContents):
2658 (WebCore::Range::setStartBefore):
2659 * editing/TextIterator.cpp:
2660 (WebCore::TextIterator::TextIterator):
2661 * html/CanvasRenderingContext2D.cpp:
2662 (WebCore::CanvasRenderingContext2D::createPattern):
2663 * html/HTMLMediaElement.cpp:
2664 (WebCore::HTMLMediaElement::play):
2665 (WebCore::HTMLMediaElement::pause):
2666 * html/HTMLSelectElement.cpp:
2667 (WebCore::HTMLSelectElement::add):
2668 (WebCore::HTMLSelectElement::setOption):
2669 * xml/XPathEvaluator.cpp:
2670 (WebCore::XPathEvaluator::evaluate):
2672 2007-11-11 Darin Adler <darin@apple.com>
2676 - http://bugs.webkit.org/show_bug.cgi?id=15945
2677 speed up GraphicsContextCG typical case by skipping roundToDevicePixels
2679 * platform/graphics/cg/GraphicsContextCG.cpp:
2680 (WebCore::GraphicsContext::restorePlatformState): Clear the flag since we no
2681 longer know if the transform is identity or not.
2682 (WebCore::GraphicsContext::strokeArc): Removed an extra set of redundant
2683 CGContextSave/RestoreGState.
2684 (WebCore::GraphicsContext::beginTransparencyLayer): Clear the flag since we no
2685 longer know if the transform is identity or not.
2686 (WebCore::GraphicsContext::endTransparencyLayer): Ditto.
2687 (WebCore::GraphicsContext::scale): Ditto.
2688 (WebCore::GraphicsContext::rotate): Ditto.
2689 (WebCore::GraphicsContext::translate): Ditto.
2690 (WebCore::GraphicsContext::concatCTM): Ditto.
2691 (WebCore::GraphicsContext::roundToDevicePixels): Return quickly if the transform
2692 is known to be identity, and record that fact when we discover it otherwise.
2694 * platform/graphics/cg/GraphicsContextPlatformPrivate.h:
2695 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
2696 Added a m_userToDeviceTransformKnownToBeIdentity flag, initialized to false.
2698 2007-11-11 Darin Adler <darin@apple.com>
2702 - http://bugs.webkit.org/show_bug.cgi?id=15944
2703 streamline SegmentedString to speed up parsing
2705 I measured a speed-up of the page load test while developing this patch. I don't
2706 have a precise figure, though.
2708 * html/HTMLTokenizer.h: Removed unneeded lineNumberPtr() function. Also renamed
2709 lineno to m_lineNumber.
2710 * html/HTMLTokenizer.cpp:
2711 (WebCore::HTMLTokenizer::processListing): Don't pass 0 to the advance function
2712 since we don't want to update a line number.
2713 (WebCore::HTMLTokenizer::parseSpecial): Ditto.
2714 (WebCore::HTMLTokenizer::parseComment): Pass the line number data member directly
2715 instead of lineNumberPtr() since the advance function now takes a reference.
2716 (WebCore::HTMLTokenizer::parseServer): Ditto.
2717 (WebCore::HTMLTokenizer::parseProcessingInstruction): Ditto.
2718 (WebCore::HTMLTokenizer::parseText): Ditto.
2719 (WebCore::HTMLTokenizer::parseEntity): Ditto.
2720 (WebCore::HTMLTokenizer::parseTag): Ditto.
2721 (WebCore::HTMLTokenizer::write): Ditto.
2723 * loader/FTPDirectoryDocument.cpp: (WebCore::FTPDirectoryTokenizer::write):
2724 * loader/TextDocument.cpp: (WebCore::TextTokenizer::write):
2725 Don't pass 0 to the advance function.
2727 * platform/SegmentedString.h: (WebCore::SegmentedString::advance): Streamlined
2728 the most common case, and pushed less common cases into a separate function
2729 that is not inlined. Also got rid of a branch by separating the case with a
2730 line number from the case without one.
2732 * platform/SegmentedString.cpp: (WebCore::SegmentedString::advanceSlowCase):
2733 Added. The aforementioned less common cases are here.
2735 2007-11-11 Antti Koivisto <antti@apple.com>
2737 Forgot to do this review change (and test HTTP commit).
2739 * html/HTMLMediaElement.cpp:
2740 (WebCore::HTMLMediaElement::play):
2742 2007-11-11 Antti Koivisto <antti@apple.com>
2746 - Update play() and pause() to match current HTML5 draft
2747 - send events asynchronously
2748 - add timeupdate event to pause
2749 - rethrow load() exception, not others
2750 - Use list for async events to get ordering right
2752 Tests: media/video-pause-empty-events.html
2753 media/video-play-empty-events.html
2754 media/video-play-pause-events.html
2755 media/video-play-pause-exception.html
2757 * html/HTMLMediaElement.cpp:
2758 (WebCore::HTMLMediaElement::dispatchEventAsync):
2759 (WebCore::HTMLMediaElement::asyncEventTimerFired):
2760 (WebCore::HTMLMediaElement::play):
2761 (WebCore::HTMLMediaElement::pause):
2762 * html/HTMLMediaElement.h:
2764 2007-11-11 Nikolas Zimmermann <zimmermann@kde.org>
2768 Fixes: http://bugs.webkit.org/show_bug.cgi?id=6424 (<text>, <tspan> dominant-baseline attribute is not respected)
2770 Add (basic) support for dominant-baseline / alignment-baseline text properties.
2771 Note: there are no official testcases, and no-one implemented it before. Only ASV3
2772 supported dominant-baseline, but not correct it seems.
2774 * rendering/SVGRootInlineBox.cpp:
2775 (WebCore::dominantBaselineToShift):
2776 (WebCore::alignmentBaselineToShift):
2777 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
2779 2007-11-11 Adam Roben <aroben@apple.com>
2781 Add wrappers around CoCreateInstance to COMPtr
2783 I followed the example of the Query constructor and query method by
2784 adding a Create constructor and create method.
2788 * platform/win/COMPtr.h:
2789 (COMPtr::COMPtr): Added a new constructor that calls
2791 (COMPtr::create): Added.
2792 (COMPtr::createInstance): Added.
2794 2007-11-11 Alexey Proskuryakov <ap@nypop.com>
2798 http://bugs.webkit.org/show_bug.cgi?id=15896
2799 More editing cleanup
2801 No functionality changes.
2803 * dom/Node.h: Moved several editing-related methods elsewhere.
2804 * dom/Node.cpp: (WebCore::Node::maxCharacterOffset): Renamed from maxOffset()
2805 to highlight that it is a match to offsetInCharacters(), and much different from other
2806 offset-related methods. Added ASSERT_NOT_REACHED(), as callers are supposed to check
2807 offsetInCharacters() before calling this.
2809 * dom/CharacterData.cpp: (WebCore::CharacterData::maxCharacterOffset):
2810 * dom/CharacterData.h: (WebCore::CharacterData::isCharacterDataNode):
2811 Updated for above renamings.
2813 * dom/Comment.{h,cpp}: Removed an override for offsetInCharacters(), which is already present in CharacterData.
2815 * dom/Document.{h,cpp}: Folded updateSelection() into Frame::selectionLayoutChanged().
2819 (WebCore::Position::uncheckedPreviousOffset): Moved from Node::previousOffset().
2820 (WebCore::Position::uncheckedNextOffset): Moved from Node::NextOffset().
2821 (WebCore::Position::previous): Adapted to the above move.
2822 (WebCore::Position::next): Ditto.
2823 (WebCore::Position::upstream): Removed an isBR() check, since a non-BR element cannot have a BR renderer (I think),
2824 and BR elements are covered by editingIgnoresContent().
2825 (WebCore::Position::downstream): Ditto.
2826 (WebCore::caretMaxRenderedOffset): Moved from Node::caretMaxRenderedOffset().
2827 (WebCore::Position::rendersInDifferentPosition): Updated for the above moves.
2829 * dom/PositionIterator.h: Added a comment describing this class from the original check-in.
2830 * dom/PositionIterator.cpp:
2831 (WebCore::PositionIterator::increment): Updated for the above moves.
2832 (WebCore::PositionIterator::decrement): Ditto.
2834 * dom/ProcessingInstruction.h:
2835 * dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::maxCharacterOffset):
2836 ProcessingInstruction was already returning true from offsetInCharacters(), but didn't override maxCharacterOffset().
2837 I think that implementing it has no actual effect, as PIs are not rendered, but it looks cleaner this way.
2840 (WebCore::Range::selectNodeContents):
2841 * editing/ApplyStyleCommand.cpp:
2842 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
2843 (WebCore::ApplyStyleCommand::applyInlineStyle):
2844 (WebCore::maxRangeOffset):
2845 (WebCore::ApplyStyleCommand::removeInlineStyle):
2846 (WebCore::ApplyStyleCommand::splitTextAtStartIfNeeded):
2847 (WebCore::ApplyStyleCommand::splitTextAtEndIfNeeded):
2848 (WebCore::ApplyStyleCommand::splitTextElementAtStartIfNeeded):
2849 (WebCore::ApplyStyleCommand::splitTextElementAtEndIfNeeded):
2850 (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
2851 * editing/CompositeEditCommand.cpp:
2852 (WebCore::CompositeEditCommand::insertNodeAt):
2853 (WebCore::CompositeEditCommand::positionOutsideTabSpan):
2854 * editing/DeleteSelectionCommand.cpp:
2855 (WebCore::DeleteSelectionCommand::handleGeneralDelete):
2856 * editing/InsertLineBreakCommand.cpp:
2857 (WebCore::InsertLineBreakCommand::doApply):
2858 * editing/InsertParagraphSeparatorCommand.cpp:
2859 (WebCore::InsertParagraphSeparatorCommand::doApply):
2860 * editing/InsertTextCommand.cpp:
2861 (WebCore::InsertTextCommand::insertTab):
2862 * editing/visible_units.cpp:
2863 (WebCore::previousLinePosition):
2864 (WebCore::nextLinePosition):
2865 Updated for the above moves.
2867 * editing/Editor.cpp:
2868 (WebCore::Editor::advanceToNextMisspelling): Added a missing rangeCompliantEquivalent() call.
2870 * editing/TextIterator.cpp:
2871 (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): Changed the condition to obviously
2872 match a maxCharacterOffset() call made after it; hopefully, this doesn't break any border cases.
2873 (WebCore::SimplifiedBackwardsTextIterator::advance): Updated for the above moves.
2875 * editing/htmlediting.h:
2876 * editing/htmlediting.cpp:
2877 (WebCore::canHaveChildrenForEditing): Removed a bogus comment: I don't thin BRs have a special ability to accept
2878 child nodes, other than via DOM manipulation, which is not specific to BRs.
2879 (WebCore::rangeCompliantEquivalent): Removed a check for BR, which is already covered by editingIgnoresContent().
2880 (WebCore::maxDeepOffset): Ditto.
2881 (WebCore::caretMinOffset): Moved from Node. Changed some runtime checks that seemingly cannot fail into assertions.
2882 (WebCore::caretMaxOffset): Ditto.
2884 * page/EventHandler.cpp:
2885 (WebCore::EventHandler::handleMousePressEventSingleClick): Pass 0 to VisiblePosition constructor instead of
2886 caretMinOffset. I didn't want to include htmlediting.h here, and I think that VisiblePosition constructor
2887 will take care of adjusting the offset.
2889 * page/Frame.cpp: (WebCore::Frame::selectionLayoutChanged): Folded Document::updateSelection() here.
2890 * page/mac/WebCoreFrameBridge.mm:
2891 (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]): Added missing rangeCompliantEquivalent() calls.
2892 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForRenderer): Changed to not round-trip via editing.
2893 Changed some runtime checks that seemingly cannot fail into assertions.
2895 2007-11-11 Darin Adler <darin@apple.com>
2899 - updated for JSRegExp function changes
2901 * platform/RegularExpression.cpp:
2902 (WebCore::RegularExpression::Private::compile):
2903 (WebCore::RegularExpression::match):
2905 2007-11-10 Mark Rowe <mrowe@apple.com>
2909 * platform/UnicodeRange.h:
2911 2007-11-10 Mark Rowe <mrowe@apple.com>
2913 Qt Windows build fix.
2915 * platform/UnicodeRange.h:
2917 2007-11-10 Nikolas Zimmermann <zimmermann@kde.org>
2921 Fixes: http://bugs.webkit.org/show_bug.cgi?id=15937 (Add glyph-orientation-horizontal/vertical support)
2922 Fixes: http://bugs.webkit.org/show_bug.cgi?id=13971 (text-anchor support on vertical text seems slightly off)
2924 Add glyph-orientation-* support for text & textPath. (90/180/270 and 'auto')
2925 Also fix all vertical text handling - for text & textPath! (especially latin1 characters auto orientation in vertical writing modes)
2927 * WebCore.pro: Add platform/UnicodeRange.cpp to build
2928 * WebCore.xcodeproj/project.pbxproj: Dito.
2929 * rendering/SVGCharacterLayoutInfo.cpp: Respect orientationShiftX/Y & angle in characterTransform()
2930 (WebCore::SVGChar::characterTransform):
2931 * rendering/SVGCharacterLayoutInfo.h: New variables.
2932 (WebCore::SVGCharOnPath::SVGCharOnPath):
2933 (WebCore::SVGChar::SVGChar):
2934 * rendering/SVGRootInlineBox.cpp: Added glyph-orientation-* handling.
2935 (WebCore::glyphOrientationToAngle):
2936 (WebCore::glyphOrientationIsMultiplyOf180Degrees):
2937 (WebCore::calculateGlyphAdvanceAndShiftRespectingOrientation):
2938 (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
2939 (WebCore::cummulatedWidthOrHeightOfTextChunk):
2940 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
2942 2007-11-10 Timothy Hatcher <timothy@apple.com>
2944 Reviewed by Sam Weinig.
2946 * page/inspector/StylesSidebarPane.js: Fix the wording of a comment
2947 and switch over to use getUniqueProperties in another place.
2949 2007-11-10 John Sullivan <sullivan@apple.com>
2951 Reviewed by Sam Weinig
2953 Rest of fix for 5394877
2955 * bindings/js/kjs_window.cpp:
2956 (KJS::Window::isSafeScript):
2957 Don't log unsafe JavaScript attempts in the other version of isSafeScript() if in
2958 private browsing mode either.
2960 2007-11-10 Nikolas Zimmermann <zimmermann@kde.org>
2964 Fix function name difference - header said 'unicodeRangeForCharacter', actually
2965 implemented function is 'findCharUnicodeRange'. They are not compiled yet.
2967 * platform/UnicodeRange.h:
2969 2007-11-10 Dan Bernstein <mitz@apple.com>
2971 Reviewed by Darin Adler.
2973 - fix <rdar://problem/5450655> Control-clicking text in a link can surprisingly select only part of the link, should select entire link
2975 No test because context menu events cannot be tested in DumpRenderTree.
2977 * page/EventHandler.cpp:
2978 (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent): Added.
2979 If the click occurred in an active link, selects the entire link
2980 element. Otherwise selects the closest word.
2981 (WebCore::EventHandler::sendContextMenuEvent): Call
2982 selectClosestWordOrLinkFromMouseEvent().
2983 * page/EventHandler.h:
2985 2007-11-10 John Sullivan <sullivan@apple.com>
2987 Reviewed by Tim Hatcher
2989 - fixed <rdar://problem/5394877> Safari should not log unsafe JavaScript attempts when
2990 in private browsing mode (only an issue if Log JavaScript Exceptions is turned on)
2992 * bindings/js/kjs_window.cpp:
2993 (KJS::Window::isSafeScript):
2994 Don't log unsafe JavaScript attempts to console or chromeClient if in private browsing mode
2996 2007-11-10 Alexey Proskuryakov <ap@webkit.org>
3000 http://bugs.webkit.org/show_bug.cgi?id=15922
3001 Implement more of Mozilla Selection API
3003 Tests: editing/selection/containsNode.html
3004 editing/selection/deleteFromDocument.html
3005 editing/selection/extend.html
3006 editing/selection/selectAllChildren.html
3008 * editing/SelectionController.cpp:
3009 (WebCore::SelectionController::deleteFromDocument):
3010 (WebCore::SelectionController::containsNode):
3011 (WebCore::SelectionController::selectAllChildren):
3012 (WebCore::SelectionController::extend):
3013 * editing/SelectionController.h:
3014 Added deleteFromDocument(), containsNode(), and selectAllChildren(). Reimplemented extend(),
3015 which existed, but didn't match Firefox behavior and wasn't exposed via bindings.
3016 Removed a comment mentioning removeRange(), as this method makes no sense without multiple
3017 selection range support.
3019 * page/DOMSelection.cpp:
3020 (WebCore::DOMSelection::extend):
3021 (WebCore::DOMSelection::deleteFromDocument):
3022 (WebCore::DOMSelection::containsNode):
3023 (WebCore::DOMSelection::selectAllChildren):
3024 * page/DOMSelection.h:
3025 * page/DOMSelection.idl:
3026 Exposed the new methods.
3028 2007-11-10 Alexey Proskuryakov <ap@webkit.org>
3032 http://bugs.webkit.org/show_bug.cgi?id=15892
3033 DOM Range operations are not implemented for ProcessingInstruction nodes
3035 Test: fast/dom/Range/range-processing-instructions.html
3038 (WebCore::Range::processContents): Implemented ProcessingInstruction cases.
3039 (WebCore::Range::checkNodeWOffset): Removed a FIXME - yes, I think that we are supposed
3040 to use ProcessingInstruction.data.
3042 2007-11-09 Timothy Hatcher <timothy@apple.com>
3044 Reviewed by Mark Rowe.
3046 Bug 12054: Ability to serialize an element subtree (into clipboard?) from the DOM inspector
3047 http://bugs.webkit.org/show_bug.cgi?id=12054
3049 - Add support code for routing copy events to the focused element.
3050 - Implement copying the currently selected DOM node. The node
3051 and it's subtree is copied to the clipboard. If the node has no
3052 outerHTML, the nodeValue is copied (text nodes, etc.)
3053 - Implement copy for the resource sidebar. The URL is copied for the
3054 currently selected resource.
3056 * page/inspector/DocumentPanel.js:
3057 * page/inspector/inspector.js:
3059 2007-11-09 Antti Koivisto <antti@apple.com>
3063 Fix occasional blank video with poster attribute.
3066 * html/HTMLMediaElement.cpp:
3067 (WebCore::HTMLMediaElement::load):
3068 (WebCore::HTMLMediaElement::didRestoreFromCache):
3069 Just calling updateFromElement() does the right thing for both poster image and video.
3071 2007-11-04 Sam Weinig <sam@webkit.org>
3073 Reviewed by Adam Roben.
3075 <rdar://problem/5435940>
3076 The COM bindings for the DOM should be autogenerated like the other DOM bindings
3078 Initial commit of the autogeneration of the COM DOM Bindings. No behavior change
3079 is being introduced in this patch and to insure that no conflicts arise, a temporary
3080 prefix of "GEN_" has been used for all the new classes.
3082 The build architecture for these bindings differs slightly from the other autogenerated
3083 bindings. Instead of building in WebCore and migrating the resuting code to WebKit (as
3084 is done for the Objective-C bindigs currently), the IDLs and generation scripts are
3085 migrated to WebKit and built there. This is done with a series of scripts and Makefiles.
3087 This commit includes:
3088 - Hand rolled root class/Interface GEN_DOMObject used to facilated object creation
3090 - Generating all of the Core DOM and most of HTML and CSS
3091 - Generating Event, EventTarget, and EventListener
3093 * WebCore.vcproj/MigrateIDLAndScripts.make: Added.
3094 * WebCore.vcproj/WebCore.vcproj:
3095 * WebCore.vcproj/migrate-idls.sh: Added.
3096 * bindings/scripts/CodeGenerator.pm:
3097 * bindings/scripts/CodeGeneratorCOM.pm: Added.
3098 * dom/EventListener.h: Make the isWindowEvent parameter default to false
3099 to allow autogeneration based on the IDL.
3101 2007-11-09 Tristan O'Tierney <tristan@apple.com>
3103 Reviewed by Timothy Hatcher.
3105 This patch is for the WebKit side of <rdar://problem/5591115>.
3106 We need a way to tell context menu navigations, such as "Open in New Window"
3107 to override any sort of browser preference for tab based navigation.
3109 * bridge/WindowFeatures.h:
3110 (WebCore::WindowFeatures::WindowFeatures):
3111 Added a new struct member var, preferredType
3112 and an accompanying enum type PreferredType
3113 to send a window type recommendation up to the Chrome.
3115 * page/ContextMenuController.cpp:
3116 (WebCore::openNewWindow):
3117 Set the window features to recommend a new Window for
3118 "Open in New Window" context menu action.
3120 2007-11-08 Adam Roben <aroben@apple.com>
3122 Fix <rdar://5483519> Pressing Enter on selected buttons should fire onclick
3124 We now match the behavior of Firefox and IE, which is to always just
3125 send a click event to the focused button when the Enter key is pressed
3126 (previously we were submitting forms directly in some cases).
3130 Test: fast/forms/enter-clicks-buttons.html
3132 * html/HTMLButtonElement.cpp:
3133 (WebCore::HTMLButtonElement::defaultEventHandler): Don't do anything
3134 fancy when Enter is pressed on a <button type=button> -- just send a
3135 click event like we do for other button types.
3136 * html/HTMLInputElement.cpp:
3137 (WebCore::HTMLInputElement::defaultEventHandler): Treat type=button
3138 the same way we treat type=submit and type=reset: just send a click
3139 event when Enter is pressed.
3141 2007-11-09 Dan Bernstein <mitz@apple.com>
3143 Reviewed by Antti Koivisto.
3145 - fix a bug in invisible layer culling: dynamically changing a
3146 descendant of an invisible layer to be visible did not work
3148 Test: fast/layers/layer-content-visibility-change.html
3150 * rendering/RenderLayer.cpp:
3151 (WebCore::RenderLayer::setHasVisibleContent): If we got visible content,
3152 make sure that our stacking context rebuilds its z-order lists to
3155 2007-11-09 David Hyatt <hyatt@apple.com>
3157 Clean up matrix() parsing. Make sure the first four arguments can be lengths or numbers. The last two
3158 args can be lengths or numbers or percents.
3162 * WebCore.xcodeproj/project.pbxproj:
3163 * css/CSSParser.cpp:
3164 (WebCore::TransformOperationInfo::TransformOperationInfo):
3165 (WebCore::CSSParser::parseTransform):
3166 * rendering/RenderStyle.h:
3167 (WebCore::MatrixTransformOperation::apply):
3169 2007-11-09 Beth Dakin <bdakin@apple.com>
3173 Fix for <rdar://problem/5586370> CSS Transform - incorrect matrix
3174 math leads to crazy problems
3176 Transform matrices accept the first four parameters as CSS lengths.
3177 CSS lengths get mapped into WebCore::Lengths as percents by
3178 WebCore::convertToLength(). Percent lengths cannot call value(). It
3179 does not yield a correct result and it asserts on Debug builds.
3181 * rendering/RenderStyle.h:
3182 (WebCore::MatrixTransformOperation::apply): Instead of calling
3183 value() on the lengths, call calcValue. This fixes the assert and
3186 2007-11-09 Simon Hausmann <hausmann@kde.org>
3188 Reviewed by nobody, build/link fix for Qt/Windows.
3190 userIdleTime() is stubbed in win/SystemTimeWin.cpp, so don't
3193 * platform/qt/TemporaryLinkStubs.cpp:
3195 2007-11-09 Simon Hausmann <hausmann@kde.org>
3199 Fix ContextMenu allocation in the Qt port.
3201 Store all items and submenus value based in ContextMenu and ContextMenuItem.
3202 That fixes the crashes when the context menu was populated with sub-menus because
3203 of the use of temporary ContextMenu objects like this:
3205 ContextMenu subMenu(...);
3206 subMenu.appendItem(...);
3207 subMenu.appendItem(...);
3209 subMenuItem.setSubMenu(&subMenu); // temporary pointer, need to _copy_ contents
3211 * platform/ContextMenu.h:
3212 * platform/ContextMenuItem.h:
3213 * platform/PlatformMenuDescription.h:
3214 * platform/qt/ContextMenuItemQt.cpp:
3215 (WebCore::ContextMenuItem::ContextMenuItem):
3216 (WebCore::ContextMenuItem::platformSubMenu):
3217 * platform/qt/ContextMenuQt.cpp:
3218 (WebCore::ContextMenu::ContextMenu):
3219 (WebCore::ContextMenu::~ContextMenu):
3220 (WebCore::ContextMenu::appendItem):
3221 (WebCore::ContextMenu::itemCount):
3223 2007-11-09 Peter Kasting <zerodpx@gmail.com>
3225 Reviewed by Mark Rowe.
3227 http://bugs.webkit.org/show_bug.cgi?id=15909
3228 Malformed GIFs should not result in memory corruption.
3230 * platform/image-decoders/gif/GIFImageDecoder.cpp:
3231 (WebCore::GIFImageDecoder::haveDecodedRow):
3233 2007-11-08 Timothy Hatcher <timothy@apple.com>
3235 Reviewed by Sam Weinig.
3237 Some Web Inspector CSS editing changes.
3238 - Only delete the property if all the text is delete or the new user input correctly parses.
3239 This prevents deleting the existing property if the new text is invalid.
3240 - Intercept the Escape key and cancel editing, not saving any changes.
3242 * page/inspector/StylesSidebarPane.js:
3244 2007-11-08 Kevin Ollivier <kevino@theolliviers.com>
3246 Bakefiles for building WebCore, needed by wx port.
3248 Reviewed by Mark Rowe.
3250 * WebCoreSources.bkl: Added.
3251 * webcore-base.bkl: Added.
3252 * webcore-wx.bkl: Added.
3254 2007-11-08 Justin Haygood <jhaygood@reaktix.com>
3256 Reviewed by Mark Rowe.
3258 http://bugs.webkit.org/show_bug.cgi?id=15905
3260 Fix builds with HTML 5 Storage support disabled.
3261 ENABLE(DATABASE) needs to be added in a few places.
3263 * page/InspectorController.cpp:
3264 * storage/Database.h:
3266 2007-11-08 Steve Falkenburg <sfalken@apple.com>
3268 <rdar://problem/5524082> Allow images to be dragged out directly into other apps
3270 We weren't including CF_HDROP in our image drops. This broke drag of
3271 images out of the browser window directly into other apps (examples
3272 include notepad, mspaint, msword).
3274 Reviewed by Oliver, Ada.
3276 * platform/win/ClipboardWin.cpp:
3277 (WebCore::createGlobalImageFileContent): Removed unused variable.
3278 (WebCore::createGlobalHDropContent): Added
3279 (WebCore::writeFileToDataObject): Write HDROP data if available.
3280 (WebCore::writeImageToDataObject): Write HDROP for dragged images.
3281 (WebCore::ClipboardWin::writeURL): Don't write HDROP for dragged URLs.
3283 2007-11-08 Xan Lopez <xan@gnome.org>
3287 http://bugs.webkit.org/show_bug.cgi?id=15908
3288 Use g_object_ref_sink when available
3290 * platform/gtk/PopupMenuGtk.cpp:
3291 (WebCore::PopupMenu::show):
3292 * platform/gtk/ScrollViewGtk.cpp:
3293 (WebCore::ScrollView::setGtkAdjustments):
3295 2007-11-08 Dan Bernstein <mitz@apple.com>
3297 Reviewed by Beth Dakin.
3299 - fix <rdar://problem/5491922> REGRESSION (Safari 2-3): Flash-based "Cash Optimizer" on etrade.com does not draw completely
3301 Test: fast/dom/length-attribute-mapping.html
3303 * dom/StyledElement.cpp:
3304 (WebCore::StyledElement::addCSSLength): Changed the garbage-stripping
3305 logic to stop after the first "%" or "*" in the string. This allows for
3306 "100%25" to be mapped to "100%" like it is in Firefox and WinIE.
3308 2007-11-08 Kevin McCullough <kmccullough@apple.com>
3312 * loader/FrameLoaderClient.h:
3313 * platform/graphics/svg/SVGImageEmptyClients.h:
3314 (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
3316 2007-11-08 Kevin McCullough <kmccullough@apple.com>
3320 - windowObjectCleared() is no longer const. It needs to setup the
3321 script debugger and cannot be const to do so.
3323 * loader/FrameLoaderClient.h:
3324 * platform/graphics/svg/SVGImageEmptyClients.h:
3325 (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
3327 2007-11-08 Adam Roben <aroben@apple.com>
3329 Hopeful Windows build fix
3331 * rendering/RenderObject.cpp: Touch this file to make it recompile.
3333 2007-11-08 Sam Weinig <sam@webkit.org>
3337 Convert JavaScript internal function objects to use one class per
3338 function. This avoids a switch statement inside what used to be
3339 the shared function classes and will allow Shark to better analyze
3342 To make this switch, the value property of the HashEntry was changed
3343 to a union of an intptr_t (which is used to continue handle valueGetters)
3344 and function pointer which points to a static constructor for the
3345 individual new function objects.
3347 SunSpider claims this is a 1.0% speedup.
3349 - On the WebCore side, I updated CodeGeneratorJS.pm to generate the
3350 new classes and hand updated the remain non-generated (groan) classes.
3352 * bindings/js/JSDOMWindowCustom.cpp:
3353 (WebCore::JSDOMWindow::customGetOwnPropertySlot):
3354 * bindings/js/JSEventTargetNode.cpp:
3355 (WebCore::JSEventTargetNodePrototypeFunctionAddEventListener::callAsFunction):
3356 (WebCore::JSEventTargetNodePrototypeFunctionRemoveEventListener::callAsFunction):
3357 (WebCore::JSEventTargetNodePrototypeFunctionDispatchEvent::callAsFunction):
3358 * bindings/js/JSEventTargetNode.h:
3359 * bindings/js/JSHTMLInputElementBase.cpp:
3360 (WebCore::JSHTMLInputElementBaseFunctionSetSelectionRange::callAsFunction):
3361 (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
3362 * bindings/js/JSHTMLInputElementBase.h:
3363 (WebCore::JSHTMLInputElementBase::):
3364 * bindings/js/JSXMLHttpRequest.cpp:
3365 (KJS::JSXMLHttpRequestPrototypeFunctionAbort::callAsFunction):
3366 (KJS::JSXMLHttpRequestPrototypeFunctionGetAllResponseHeaders::callAsFunction):
3367 (KJS::JSXMLHttpRequestPrototypeFunctionGetResponseHeader::callAsFunction):
3368 (KJS::JSXMLHttpRequestPrototypeFunctionOpen::callAsFunction):
3369 (KJS::JSXMLHttpRequestPrototypeFunctionSend::callAsFunction):
3370 (KJS::JSXMLHttpRequestPrototypeFunctionSetRequestHeader::callAsFunction):
3371 (KJS::JSXMLHttpRequestPrototypeFunctionOverrideMIMEType::callAsFunction):
3372 (KJS::JSXMLHttpRequestPrototypeFunctionAddEventListener::callAsFunction):
3373 (KJS::JSXMLHttpRequestPrototypeFunctionRemoveEventListener::callAsFunction):
3374 (KJS::JSXMLHttpRequestPrototypeFunctionDispatchEvent::callAsFunction):
3375 * bindings/js/JSXMLHttpRequest.h:
3376 (KJS::JSXMLHttpRequest::impl):
3377 * bindings/js/JSXSLTProcessor.cpp:
3378 (KJS::JSXSLTProcessorPrototypeFunctionImportStylesheet::callAsFunction):
3379 (KJS::JSXSLTProcessorPrototypeFunctionTransformToFragment::callAsFunction):
3380 (KJS::JSXSLTProcessorPrototypeFunctionTransformToDocument::callAsFunction):
3381 (KJS::JSXSLTProcessorPrototypeFunctionSetParameter::callAsFunction):
3382 (KJS::JSXSLTProcessorPrototypeFunctionGetParameter::callAsFunction):
3383 (KJS::JSXSLTProcessorPrototypeFunctionRemoveParameter::callAsFunction):
3384 (KJS::JSXSLTProcessorPrototypeFunctionClearParameters::callAsFunction):
3385 (KJS::JSXSLTProcessorPrototypeFunctionReset::callAsFunction):
3386 * bindings/js/JSXSLTProcessor.h:
3387 * bindings/js/kjs_events.cpp:
3388 (WebCore::JSClipboardPrototypeFunctionClearData::callAsFunction):
3389 (WebCore::JSClipboardPrototypeFunctionGetData::callAsFunction):
3390 (WebCore::JSClipboardPrototypeFunctionSetData::callAsFunction):
3391 (WebCore::JSClipboardPrototypeFunctionSetDragImage::callAsFunction):
3392 * bindings/js/kjs_events.h:
3393 * bindings/js/kjs_navigator.cpp:
3395 (KJS::Navigator::getOwnPropertySlot):
3396 (KJS::Plugins::getOwnPropertySlot):
3397 (KJS::PluginsFunctionRefresh::callAsFunction):
3398 (KJS::NavigatorProtoFuncJavaEnabled::callAsFunction):
3399 * bindings/js/kjs_navigator.h:
3401 * bindings/js/kjs_window.cpp:
3402 (KJS::Window::getOwnPropertySlot):
3404 (KJS::WindowProtoFuncAToB::callAsFunction):
3405 (KJS::WindowProtoFuncBToA::callAsFunction):
3406 (KJS::WindowProtoFuncOpen::callAsFunction):
3407 (KJS::WindowProtoFuncScrollBy::callAsFunction):
3408 (KJS::WindowProtoFuncScrollTo::callAsFunction):
3409 (KJS::WindowProtoFuncMoveBy::callAsFunction):
3410 (KJS::WindowProtoFuncMoveTo::callAsFunction):
3411 (KJS::WindowProtoFuncResizeBy::callAsFunction):
3412 (KJS::WindowProtoFuncResizeTo::callAsFunction):
3413 (KJS::WindowProtoFuncSetTimeout::callAsFunction):
3414 (KJS::WindowProtoFuncClearTimeout::callAsFunction):
3415 (KJS::WindowProtoFuncSetInterval::callAsFunction):
3416 (KJS::WindowProtoFuncAddEventListener::callAsFunction):
3417 (KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
3418 (KJS::WindowProtoFuncShowModalDialog::callAsFunction):
3419 (KJS::WindowProtoFuncNotImplemented::callAsFunction):
3420 (KJS::Location::getOwnPropertySlot):
3421 (KJS::Location::put):
3422 (KJS::LocationProtoFuncReplace::callAsFunction):
3423 (KJS::LocationProtoFuncReload::callAsFunction):
3424 (KJS::LocationProtoFuncAssign::callAsFunction):
3425 (KJS::LocationProtoFuncToString::callAsFunction):
3426 * bindings/js/kjs_window.h:
3428 * bindings/scripts/CodeGeneratorJS.pm:
3430 2007-11-08 Mark Rowe <mrowe@apple.com>
3432 Fix the Gtk, Qt and Wx builds.
3434 * platform/gtk/TemporaryLinkStubs.cpp:
3435 * platform/qt/TemporaryLinkStubs.cpp:
3436 * platform/wx/TemporaryLinkStubs.cpp:
3438 2007-11-08 Mark Rowe <mrowe@apple.com>
3440 Not reviewed. Fix two instances of includes using the wrong case in the filename.
3442 * platform/graphics/mac/MoviePrivateQTKit.mm:
3443 * platform/wx/MimeTypeRegistryWx.cpp:
3445 2007-11-08 Darin Adler <darin@apple.com>
3449 - fix <rdar://problem/5552943> accesskey does not focus <button> elements
3451 Test: fast/forms/access-key.html
3453 * html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::accessKeyAction):
3454 Added a call to focus.
3456 2007-11-07 Darin Adler <darin@apple.com>
3460 - cut down on notImplemented() functions on Windows
3462 * bridge/AXObjectCache.h: Put #if around the accessibility
3465 * bridge/win/FrameWin.cpp: (WebCore::Frame::setNeedsReapplyStyles):
3466 Moved here from TemporaryLinkStubs.
3468 * dom/Document.cpp: (WebCore::Document::lastModified): Re-implemented
3469 using the ResourceResponse that's now available from the DocumentLoader.
3471 * editing/JSEditor.cpp: (execTranspose): Changed to call transpose() on
3472 the Editor instead of the obsolete one on the Frame.
3474 * loader/DocumentLoader.h: Removed getResponseModifiedHeader.
3475 * loader/FrameLoader.h: Removed overrideMediaType.
3477 * loader/gtk/DocumentLoaderGtk.cpp: Removed.
3478 * loader/mac/DocumentLoaderMac.mm: Removed.
3479 * loader/qt/DocumentLoaderQt.cpp: Removed.
3481 * page/Frame.cpp: Removed transpose.
3482 * page/Frame.h: Ditto.
3483 * page/FrameView.h: Removed updateBorder.
3484 * page/gtk/FrameGtk.cpp: Removed issueTransposeCommand.
3485 * page/mac/FrameMac.mm: Ditto.
3486 * page/mac/WebCoreFrameBridge.h: Removed issueTransposeCommand and
3488 * page/qt/FrameQt.cpp: Removed issueTransposeCommand.
3490 * platform/gtk/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled.
3491 * platform/qt/TemporaryLinkStubs.cpp: Ditto.
3492 * platform/win/TemporaryLinkStubs.cpp: Removed or moved all but 3 of the stubs.
3493 * platform/wx/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled,
3494 issueTransposeCommand, and overrideMediaType.
3496 * platform/network/cf/ResourceHandleCFNet.cpp:
3497 (WebCore::ResourceHandle::loadsBlocked): Moved here from TemporaryLinkStubs.
3498 (WebCore::ResourceHandle::willLoadFromCache): Ditto.
3499 * platform/win/GraphicsContextWin.cpp:
3500 (WebCore::GraphicsContextPlatformPrivate::clip): Ditto.
3501 * platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::inWindow): Ditto.
3502 * platform/win/SystemTimeWin.cpp: (WebCore::userIdleTime): Ditto.
3503 * platform/win/WidgetWin.cpp: (WebCore::Widget::setIsSelected): Ditto.
3505 * WebCore.pro: Updated for removed files.
3506 * WebCore.xcodeproj/project.pbxproj: Updated for removed file.
3508 2007-11-08 Mark Rowe <mrowe@apple.com>
3510 Build fix for case-sensitive file systems. Fix case of file names
3513 * html/HTMLMediaElement.cpp:
3514 * platform/graphics/Movie.cpp:
3516 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
3518 Reviewed by Lars Knoll <lars@trolltech.com>.
3520 Remove some warnings about not implemented methods.
3522 * ResourceHandle::loadsBlocked and ResourceHandle::supportsBufferedData are
3523 specific to the NS API and won't be implemented on Qt.
3524 * ResourceHandle::bufferedData can not be reached as we return false in
3525 ResourceHandle::supportsBufferedData.
3528 * platform/network/qt/ResourceHandleQt.cpp:
3529 (WebCore::ResourceHandle::supportsBufferedData):
3531 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
3533 Reviewed by Lars Knoll <lars@trolltech.com>.
3535 Cleanup checking for the request method.
3537 * Check the request method only in QWebNetworkManager::add.
3538 * Currently HEAD, GET, POST are allowed and for everything else
3539 QWebNetworkManager::add returns false.
3540 * Returning false is compatible with ResourceHandle::start and it
3541 can be used in ResourceHandle::loadResourceSynchronously to generate
3545 * platform/network/qt/ResourceHandleQt.cpp:
3546 (WebCore::ResourceHandle::start):
3547 (WebCore::ResourceHandle::loadResourceSynchronously):
3549 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
3551 Reviewed by Lars Knoll <lars@trolltech.com>.
3553 Implement WebCore::callOnMainThread
3555 Implemented using a global QObject, that is moved to the main thread
3556 and then sending a custom event to it.
3557 Picked a number below QEvent::User but above any other documented value.
3560 * platform/qt/ThreadingQt.cpp:
3561 (WebCore::PerformFunctionEvent::PerformFunctionEvent):
3562 (WebCore::MainThreadInvoker::MainThreadInvoker):
3563 (WebCore::MainThreadInvoker::event):
3564 (WebCore::callOnMainThread):
3566 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
3568 Reviewed by Lars Knoll <lars@trolltech.com>.
3570 Avoid problems with calling QPainter::begin() on an already active paintdevice
3572 * Partial pick from 6200e04c3e0a77873c3b3f3969b65bc701020326 to avoid getting
3573 crashes on Qt/Mac 4.4 with QPainter::begin to fail because we already draw.
3574 * If we are in a layout or need one do not paint. This can happen for the PlatformScrollBar
3575 used by the ScrollView on a layout triggered by QWebPage::paintEvent.
3578 * platform/qt/WidgetQt.cpp:
3579 (WebCore::Widget::invalidateRect):
3581 2007-11-08 Eric Seidel <eric@webkit.org>
3585 * ksvg2/svg/SVGPathElement.h: remove old comment
3587 2007-11-07 Antti Koivisto <antti@apple.com>
3591 Ensure video renderer