1 2007-11-22 Timothy Hatcher <timothy@apple.com>
3 Revert part of my r27935 change that made the Tip balloons
4 animate with CSS transitions. The balloon was only opacity 0,
5 so it would cause it's row to highlight when hovering over
8 * page/inspector/NetworkPanel.js:
9 * page/inspector/inspector.css:
11 2007-11-22 Dan Bernstein <mitz@apple.com>
13 Reviewed by Maciej Stachowiak.
15 - fix http://bugs.webkit.org/show_bug.cgi?id=15943
16 -webkit-transform matrix does not work
18 Test: fast/transforms/matrix-01.html
20 Parse all six matrix entries as numbers.
23 (WebCore::TransformOperationInfo::TransformOperationInfo):
24 (WebCore::CSSParser::parseTransform):
25 * css/CSSStyleSelector.cpp:
26 (WebCore::CSSStyleSelector::applyProperty):
27 * rendering/RenderStyle.cpp:
28 (WebCore::MatrixTransformOperation::blend):
29 * rendering/RenderStyle.h:
30 (WebCore::MatrixTransformOperation::MatrixTransformOperation):
31 (WebCore::MatrixTransformOperation::apply):
33 2007-11-22 Laszlo Gombos <laszlo.gombos@gmail.com>
35 Reviewed by Alp Toker.
37 Fix some compilation warnings. Do not reference undefined (platform) specific type (WebCore::CachedFont::m_fontData)
39 * loader/CachedFont.cpp:
40 (WebCore::CachedFont::~CachedFont):
41 (WebCore::CachedFont::allReferencesRemoved):
43 2007-11-22 Alp Toker <alp@atoker.com>
45 Reviewed by Mark Rowe.
49 Add a check to avoid crashing when the GraphicsContext is not
50 associated with a GdkEventExpose. This was noticed when adding
51 printing support but might be triggered in other situations too.
53 * platform/gtk/WidgetGtk.cpp:
54 (WebCore::Widget::paint):
56 2007-11-22 Julien Chaffraix <julien.chaffraix@gmail.com>
60 Bug 15530: XMLHttpRequest should not support certain methods
62 Test: http/tests/xmlhttprequest/xmlhttprequest-forbidden-methods-exception.html
64 * xml/XMLHttpRequest.cpp:
65 (WebCore::XMLHttpRequest::open):
67 2007-11-22 Simon Hausmann <hausmann@kde.org>
71 For the build inside Qt include qbase.pri and don't duplicate what qbase.pri otherwise does (install targets, etc.)
75 2007-11-22 Simon Hausmann <hausmann@kde.org>
79 Don't set OBJECTS_DIR when building inside Qt
83 2007-11-22 Simon Hausmann <hausmann@kde.org>
87 Use ../generated as path for the generated sources for builds inside Qt
91 2007-11-22 Simon Hausmann <hausmann@kde.org>
95 Make the directory of where to put the generated sources configurable through the GENERATED_SOURCE_DIR variable
99 2007-11-22 Simon Hausmann <hausmann@kde.org>
103 Centralize the setup for all the extra compilers in a addExtraCompiler function.
105 This allows adding a "generated_files" target that builds all generated files using "make generated_files".
106 For the build inside Qt we do not generate actual rules for the extra compilers but instead
107 do the variable substitution of compiler.output manually and add the generated sources to SOURCES.
111 2007-11-21 Timothy Hatcher <timothy@apple.com>
113 Reviewed by Eric Seidel.
115 Show Fonts as Yellow in the network timeline.
117 * page/inspector/NetworkPanel.js:
118 * page/inspector/inspector.css:
120 2007-11-21 Dan Bernstein <mitz@apple.com>
122 Reviewed by Eric Seidel.
124 - fix <rdar://problem/5607037> REGRESSION (r27351): Departure date does not repaint when changed on Google Maps public transit planner (16034)
126 Test: fast/repaint/subtree-root-skipped.html
128 * page/FrameView.cpp:
129 (WebCore::FrameViewPrivate::FrameViewPrivate): Initialize the layout
131 (WebCore::FrameView::layoutRoot): Changed to return a RenderObject
133 (WebCore::FrameView::layout): Changed for layout root being a renderer
134 rather than a DOM node. Also replaced clearing the repaint rects
135 set with asserting that it is empty if this is the top-level call to
136 layout(). If it is not, the set may contain rects from enclosing
137 layout() and those should not be removed.
138 (WebCore::FrameView::scheduleRelayout): Changed for layout root being
139 a renderer rather than a DOM node.
140 (WebCore::isObjectAncestorContainerOf): Added this helper function that
141 tests whether one object will be marked by calling
142 markContainingBlocksForLayout() on the other.
143 (WebCore::FrameView::scheduleRelayoutOfSubtree): Changed for layout
144 root being a renderer rather than a DOM node. Changed the check if new
145 and current layout roots are on the same path from the root to use
146 the subgraph of the render tree defined by container()hood instead of
147 the DOM tree and parenthood.
149 * rendering/RenderBox.cpp:
150 (WebCore::RenderBox::calcWidth): Changed for layout root being a
151 renderer rather than a DOM node.
152 * rendering/RenderObject.cpp:
153 (WebCore::RenderObject::~RenderObject): Added an assertion that the
154 object being deleted is not currently the layout root.
155 (WebCore::RenderObject::scheduleRelayout): Changed for layout root being
156 a renderer rather than a DOM node.
158 2007-11-21 Mark Rowe <mrowe@apple.com>
162 Fix WebCore to build without warnings under GCC 4.2.
164 * Configurations/Base.xcconfig:
165 * css/CSSRuleList.cpp:
166 (WebCore::CSSRuleList::deleteRule):
167 * css/CSSStyleSelector.cpp:
168 (WebCore::CSSStyleSelector::locateSharedStyle):
169 * html/HTMLParser.cpp:
170 (WebCore::HTMLParser::allowNestedRedundantTag):
171 * rendering/RenderBlock.cpp:
172 (WebCore::RenderBlock::fillInlineSelectionGaps):
173 (WebCore::RenderBlock::fillBlockSelectionGaps):
174 * rendering/RenderLayer.cpp:
175 (WebCore::RenderLayer::stackingContext):
176 (WebCore::RenderLayer::enclosingPositionedAncestor):
177 (WebCore::RenderLayer::transparentAncestor):
178 * rendering/RenderStyle.cpp:
179 (WebCore::BackgroundLayer::fillUnsetProperties):
180 (WebCore::Transition::fillUnsetProperties):
181 * rendering/RenderText.cpp:
182 (WebCore::RenderText::containsOnlyWhitespace):
183 * rendering/bidi.cpp:
184 (WebCore::RenderBlock::determineStartPosition):
186 2007-11-21 Alp Toker <alp@atoker.com>
188 Reviewed by Mark Rowe.
190 http://bugs.webkit.org/show_bug.cgi?id=16071
191 Curl backend handles EINTR incorrectly
193 Defer timers during select() to avoid interruption by timer signals.
195 * platform/network/curl/ResourceHandleManager.cpp:
196 (WebCore::ResourceHandleManager::downloadTimerCallback):
198 2007-11-21 Mark Rowe <mrowe@apple.com>
200 Reviewed by Tim Hatcher.
202 Changes due to <rdar://problem/5602936> Need to resolve new GCC 4.2 warnings
204 Update format strings to use format specifiers that match the argument types.
206 * loader/icon/IconDatabase.cpp:
207 (WebCore::IconDatabase::performURLImport):
208 (WebCore::IconDatabase::writeToDatabase):
209 * platform/mac/TextCodecMac.cpp:
210 (WebCore::TextCodecMac::decode):
211 * storage/Database.cpp:
212 (WebCore::Database::deliverAllPendingCallbacks):
214 2007-11-21 Xan Lopez <xan@gnome.org>
216 Reviewed by Alp Toker.
218 Clarify scroll event processing with a comment.
220 * platform/gtk/PlatformScrollBarGtk.cpp:
221 (gtkScrollEventCallback):
223 2007-11-21 Timothy Hatcher <timothy@apple.com>
225 Reviewed by Adam Roben.
227 Bug 16085: Web Inspector's Network Timeline graph code clean up and misc. fixes
228 http://bugs.webkit.org/show_bug.cgi?id=16085
231 - Refactor the drawing code as nested functions instead of global functions.
232 - Compute the segment percentages only once per call to drawSummaryGraph.
233 - Account for percentages that rounded down to total less-than 100%.
234 - Draw the pill shadow better using the canvas shadow drawing properties.
235 - Removes a couple canvas context saves and restores.
237 * page/inspector/NetworkPanel.js:
239 2007-11-21 Alexey Proskuryakov <ap@webkit.org>
241 Reviewed by Adam Roben.
243 http://bugs.webkit.org/show_bug.cgi?id=16056
244 Unicode not being interpreted correctly in Web Inspector source view
246 Cannot be tested automatically.
248 * loader/CachedCSSStyleSheet.cpp:
249 (WebCore::CachedCSSStyleSheet::encoding):
250 * loader/CachedCSSStyleSheet.h:
251 * loader/CachedResource.h:
252 (WebCore::CachedResource::encoding):
253 * loader/CachedScript.cpp:
254 (WebCore::CachedScript::encoding):
255 * loader/CachedScript.h:
256 * loader/CachedXBLDocument.cpp:
257 (WebCore::CachedXBLDocument::encoding):
258 * loader/CachedXBLDocument.h:
259 * loader/CachedXSLStyleSheet.cpp:
260 (WebCore::CachedXSLStyleSheet::encoding):
261 * loader/CachedXSLStyleSheet.h:
262 Teach textual CachedResources to report their encodings.
264 * page/InspectorController.cpp:
265 (WebCore::addSourceToFrame):
266 (WebCore::updateResourceResponse):
267 Use the actual encoding - the network layer has little idea about it.
269 2007-11-20 Mark Rowe <mrowe@apple.com>
271 Reviewed by Maciej Stachowiak.
273 Fix <rdar://problem/5609579> (DOMParser().parseFromString() freezes Safari when parsing large nodes with XML entities)
274 http://bugs.webkit.org/show_bug.cgi?id=16076
276 XMLTokenizer was calling CharacterData::appendData twice per entity in the fragment of XML being
277 parsed (once for text before the entity, once for the entity itself). This triggered O(n^2) copying
278 of the CharacterData's string due to resizing. We now prevent this happening by buffering all the
279 content for a given Text node in the XMLTokenizer before sending it out to the node in a single go.
281 * dom/XMLTokenizer.cpp:
282 (WebCore::XMLTokenizer::characters): Append the characters to the buffer.
283 (WebCore::XMLTokenizer::endDocument): Ensure the buffer is flushed when the document has ended.
284 (WebCore::endDocumentHandler):
285 (WebCore::XMLTokenizer::enterText):
286 (WebCore::XMLTokenizer::exitText): Append the contents of the buffer to the node.
287 (WebCore::XMLTokenizer::initializeParserContext): Add the endDocument handler.
288 (WebCore::parseXMLDocumentFragment): Force endDocument to be called when parsing a fragment to ensure
289 that the buffer gets flushed to the node.
290 * dom/XMLTokenizer.h:
292 2007-11-20 Timothy Hatcher <timothy@apple.com>
294 Reviewed by Mark Rowe.
296 Animate the status area and tip balloons in the Web Inspector
299 * page/inspector/NetworkPanel.js:
300 * page/inspector/inspector.css:
301 * page/inspector/inspector.js:
303 2007-11-20 Kevin Ollivier <kevino@theolliviers.com>
305 wx build fix for Windows. Don't use WebCore/move-js-headers.sh as
306 it indiscriminately copies any headers inside JavaScriptCore,
307 which includes Tiger ICU headers.
310 Remove references to the WebCore/include dir generated by
311 move-js-headers.sh, and also get headers from JavaScriptCore
312 directly rather than from WebCore/ForwardingHeaders.
314 2007-11-20 Alp Toker <alp@atoker.com>
316 Reviewed by Mark Rowe.
318 Avoid pointlessly mallocing and freeing this transform matrix.
320 * platform/gtk/FontPlatformDataGtk.cpp:
321 (WebCore::FontPlatformData::FontPlatformData):
323 2007-11-20 Naiem Shaik <naiem.shaik@gmail.com>
325 Reviewed by Alp Toker.
327 http://bugs.webkit.org/show_bug.cgi?id=15763
328 [GTK] Enter key does not take to the link highlighted.
330 Add missing keycode cases.
332 * platform/gtk/KeyEventGtk.cpp:
333 (WebCore::keyIdentifierForGdkKeyCode):
334 (WebCore::windowsKeyCodeForKeyEvent):
335 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
337 2007-11-20 Mark Rowe <mrowe@apple.com>
339 Reviewed by Sam Weinig.
341 Fix http://bugs.webkit.org/show_bug.cgi?id=16074
342 Bug 16074: execCommand("InsertHorizontalRule", false, "") results in id="" being inserted
344 For consistency with InsertOrderedList and InsertUnorderedList a value parameter of "" should
345 not result in an id being set.
347 * editing/JSEditor.cpp: Don't set the id attribute if value is empty.
349 2007-11-20 Dan Bernstein <mitz@apple.com>
351 Reviewed by Adam Roben.
353 - fix <rdar://problem/5090708> Textareas render broken-looking scrollbars when too short to show full scrollbar
355 * platform/win/PlatformScrollBar.h:
356 * platform/win/PlatformScrollBarSafari.cpp:
357 Added the "hit inset" constants (representing how far the track eats
359 (WebCore::PlatformScrollbar::paint): Changed to paint the buttons and
360 the thumb only if they should be showing.
361 (WebCore::PlatformScrollbar::hasButtons): Added. Returns whether the
362 arrows should be drawn.
363 (WebCore::PlatformScrollbar::hasThumb): Added. Returns whether the thumb
365 (WebCore::PlatformScrollbar::forwardButtonRect):
366 (WebCore::PlatformScrollbar::trackRect): Changed to return the entire
367 bounds of the scrollbar if the scrollbar has no buttons.
368 (WebCore::PlatformScrollbar::paintTrack): Changed to paint a disabled
369 track along the entire scrollbar if it has not buttons.
370 (WebCore::PlatformScrollbar::hitTest): Changed to hit test only the
371 parts that the scrollbar has in its current dimensions.
373 2007-11-20 Mark Rowe <mrowe@apple.com>
375 Reviewed by Alp Toker.
377 * config.h: Change #if to #ifdef to silence warnings on non-Apple platforms.
379 2007-11-20 Simon Hausmann <hausmann@kde.org>
381 Reviewed by Adam Treat <treat@kde.org>.
383 Remove static linkage of QtWebKit against the ICO image format plugin.
384 Instead build the support for the ICO image format as a proper standalone qt image format plugin and install it.
387 * platform/graphics/qt/ImageDecoderQt.cpp:
389 2007-11-20 David D. Kilzer <ddkilzer@webkit.org>
391 no-svg build broken after r27278
392 <http://bugs.webkit.org/show_bug.cgi?id=16061>
396 * bindings/scripts/CodeGeneratorObjC.pm: Always generate DOMHTMLEmbedElementPrivate.h
397 and DOMHTMLObjectElementPrivate.h for no-svg build.
399 2007-11-20 Adam Treat <treat@kde.org>
403 * Don't use so much heap memory.
405 * platform/graphics/qt/ImageDecoderQt.cpp:
406 * platform/graphics/qt/ImageDecoderQt.h:
407 * platform/graphics/qt/ImageSourceQt.cpp:
408 (WebCore::ImageSource::createFrameAtIndex):
410 2007-11-20 Lars Knoll <lars@trolltech.com>
414 Fix text break interators.
416 The break iterators where trying to be smart about the input
417 string and caching their results. Unfortunately a pointer/string length
418 comparison is not good enough in all cases (since some input is stack based
419 temp strings). Removed the caching but at the same time started to use a more
420 efficient constructor of QTextBoundaryFinder that doesn't need to malloc for
423 Fixes two test cases that test "text-transform: capitalize".
425 * platform/qt/TextBreakIteratorQt.cpp:
426 (WebCore::wordBreakIterator):
427 (WebCore::characterBreakIterator):
428 (WebCore::lineBreakIterator):
429 (WebCore::sentenceBreakIterator):
431 2007-11-20 Adam Treat <treat@kde.org>
435 * Make gif animations work for instance.
437 * platform/graphics/qt/ImageDecoderQt.cpp:
438 (WebCore::ImageDecoderQt::reset):
439 (WebCore::ImageDecoderQt::setData):
440 (WebCore::ImageDecoderQt::frameCount):
441 (WebCore::ImageDecoderQt::repetitionCount):
442 * platform/graphics/qt/ImageDecoderQt.h:
444 2007-11-20 Adam Treat <treat@kde.org>
446 * Build in release mode
448 * platform/NotImplemented.h:
450 2007-11-20 Adam Treat <treat@kde.org>
452 Reviewed by Simon and George.
454 * Be quiet and allow suppression of NotImplemented calls at runtime.
456 * platform/NotImplemented.h:
458 2007-11-19 Doug Turner <dougt@meer.net>
460 Reviewed by Alp Toker.
462 http://bugs.webkit.org/show_bug.cgi?id=16054
463 Crash when GlyphPage::fill is called with more than 256 bytes of data
465 http://bugs.webkit.org/show_bug.cgi?id=14446
466 [GDK] Crash on http://www.wikipedia.org/
468 setGlyphDataForIndex() uses a fixed array of size 256 which we can't
469 exceed. We need to return failure if the buffer has Unicode
470 supplementary characters for now.
472 This strategy matches the Win port, which also doesn't support this
475 Add an assertion so nobody makes this mistake again.
477 * platform/GlyphPageTreeNode.h:
478 (WebCore::GlyphPage::setGlyphDataForIndex):
479 * platform/gtk/GlyphPageTreeNodeGtk.cpp:
480 (WebCore::GlyphPage::fill):
482 2007-11-19 Doug Turner <dougt@meer.net>
484 Reviewed by Timothy Hatcher.
486 http://bugs.webkit.org/show_bug.cgi?id=16050
487 sqlite3_prepare16_v2 build bustage.
489 Using the correct SQLITE_VERSION_NUMBER around sqlite_prepare16_v2
490 to fix build bustage.
492 * platform/sql/SQLiteStatement.cpp:
493 (WebCore::SQLiteStatement::prepare):
495 2007-11-19 Mark Rowe <mrowe@apple.com>
497 Build fix. Don't over-qualify the constructor name.
499 * storage/DatabaseDetails.h:
501 2007-11-19 Brady Eidson <beidson@apple.com>
505 Stub out the WebCore parts of the WebKit API
508 * WebCore.xcodeproj/project.pbxproj:
510 * storage/DatabaseDetails.h: Added. Simple container for vitals on a specific database
511 (WebCore::DatabaseDetails::DatabaseDetails::DatabaseDetails):
512 (WebCore::DatabaseDetails::DatabaseDetails):
513 (WebCore::DatabaseDetails::isValid):
514 (WebCore::DatabaseDetails::name):
515 (WebCore::DatabaseDetails::version):
516 (WebCore::DatabaseDetails::displayName):
517 (WebCore::DatabaseDetails::expectedUsage):
518 (WebCore::DatabaseDetails::currentUsage):
520 * storage/DatabaseTracker.cpp: Added various methods for API usage
521 (WebCore::DatabaseTracker::detailsForNameAndOrigin):
522 (WebCore::DatabaseTracker::usageForOrigin):
523 (WebCore::DatabaseTracker::quotaForOrigin):
524 (WebCore::DatabaseTracker::setQuota):
525 * storage/DatabaseTracker.h:
527 2007-11-19 Kevin Ollivier <kevino@theolliviers.com>
531 * platform/graphics/wx/AffineTransformWx.cpp:
532 (WebCore::AffineTransform::operator== ):
533 m_transform is only available when using wxGraphicsContext.
535 2007-11-19 Alp Toker <alp@atoker.com>
537 Reviewed by Mark Rowe.
541 Add a check to avoid crashing when the GraphicsContext is not
542 associated with a GdkDrawable. This was noticed when adding printing
543 support but might be triggered in other situations too.
545 Do not render themes when painting is disabled. This is an
546 optimisation for cases where GraphicsContext is used to calculate page
547 dimensions etc. without actually rendering.
549 * platform/graphics/cairo/GraphicsContextCairo.cpp:
550 (WebCore::GraphicsContext::gdkDrawable):
551 * platform/gtk/RenderThemeGtk.cpp:
552 (WebCore::paintMozWidget):
554 2007-11-13 Rahul Abrol <ra5ul@comcast.net>
556 Reviewed by Tim Hatcher.
558 http://bugs.webkit.org/show_bug.cgi?id=15977
559 Resizing images preference now toggles default image state.
561 * loader/ImageDocument.cpp:
562 (WebCore::ImageDocument::ImageDocument):
563 (WebCore::ImageDocument::createDocumentStructure):
564 (WebCore::ImageDocument::imageChanged):
566 2007-11-19 Kevin Ollivier <kevino@theolliviers.com>
568 Update wx port build sources with recent changes, update
569 wx FontPlatformData to be a class (MSVC7 gets confused
570 otherwise...) and implement its hash() method.
574 * WebCoreSources.bkl:
575 * platform/wx/FontPlatformData.h:
576 (WebCore::FontPlatformData::hash):
578 2007-11-19 Julien Chaffraix <julien.chaffraix@gmail.com>
582 http://bugs.webkit.org/show_bug.cgi?id=12194
583 Bug 12194: Trying to access XMLHttpRequest.responseText or responseXML when they
584 are not available should raise an exception
586 Tests: http/tests/xmlhttprequest/xmlhttprequest-responseText-exception.html
587 http/tests/xmlhttprequest/xmlhttprequest-responseXML-exception.html
589 * bindings/js/JSXMLHttpRequest.cpp:
590 (KJS::JSXMLHttpRequest::getValueProperty):
591 * xml/XMLHttpRequest.cpp:
592 (WebCore::XMLHttpRequest::getResponseText):
593 (WebCore::XMLHttpRequest::getResponseXML):
594 * xml/XMLHttpRequest.h:
596 2007-11-19 Peter Kasting <zerodpx@gmail.com>
598 Reviewed by Darin Adler.
600 http://bugs.webkit.org/show_bug.cgi?id=15971
601 The GIF decoder should not fail decoding if the caller asks it to
602 decode again when no new data has arrived since the last call.
604 * platform/image-decoders/gif/GIFImageReader.cpp:
605 (GIFImageReader::read):
607 2007-11-18 Brady Eidson <beidson@apple.com>
611 Fix a crash hashing a default SecurityOriginData object
613 * storage/DatabaseTracker.cpp:
614 (WebCore::SecurityOriginDataHash::hash): The default object has some default strings with NULL
615 StringImpls - don't try to hash those!
617 2007-11-18 Timothy Hatcher <timothy@apple.com>
619 Reviewed by Sam Weinig.
621 Bug 16043: Remove InspectorController.log now that console.log works
622 http://bugs.webkit.org/show_bug.cgi?id=16043
624 Remove the last uses of InspectorController.log. Once use was no longer needed,
625 checking an erro case that can't happen anymore. The other case now uses console.error.
627 * page/InspectorController.cpp: Remove the log function.
628 (WebCore::InspectorController::windowScriptObjectAvailable): Remove the log function from
629 InspectorController script class.
630 * page/inspector/DocumentPanel.js: Remove a use of InspectorController.log that isn't needed.
631 * page/inspector/Panel.js: Change InspectorController.log to console.log and early return.
633 2007-11-18 Timothy Hatcher <timothy@apple.com>
637 Bug 16041: REGRESSION: the Database panel in the Inspector stopped showing errors
638 http://bugs.webkit.org/show_bug.cgi?id=16041
640 * page/inspector/DatabasePanel.js: Implement error callbacks to pass to executeSql()
641 and transaction(). Refactored some code for the success and error callbacks to use.
643 2007-11-18 Alexey Proskuryakov <ap@webkit.org>
647 <rdar://problem/5546393> Whitespace handling doesn't match HTML5.
649 HTML5 definition is the same as MSIE's, with the exception that the latter strips null
650 characters. Firefox also treats U+0008 as whitespace, but not U+000B or U+000C.
652 Test: fast/parser/html-whitespace.html
654 * html/HTMLTokenizer.cpp:
655 (WebCore::HTMLTokenizer::parseSpecial):
656 (WebCore::HTMLTokenizer::parseTag):
657 Use isASCIISpace, which matches HTML5 definition of whitespace, and also what we use to
658 check for whitespace almost everywhere.
660 2007-11-17 Mark Rowe <mrowe@apple.com>
662 Reviewed by Darin Adler.
664 Fix: <rdar://problem/5607032> REGRESSION: testapi exits with assertion failure in debug build
665 <rdar://problem/5440659> JSGlobalContextCreate throws away globalObjectClass's prototype
666 http://bugs.webkit.org/show_bug.cgi?id=16033
668 Update for changes in Interpreter method signatures.
670 * bindings/js/kjs_binding.cpp:
671 (KJS::ScriptInterpreter::ScriptInterpreter):
672 * bindings/js/kjs_window.cpp:
673 (KJS::Window::clear):
675 2007-11-17 Timothy Hatcher <timothy@apple.com>
677 Reviewed by Mark Rowe.
679 Bug 13470: i18n: The Web Inspector is not localizable
680 http://bugs.webkit.org/show_bug.cgi?id=13470
682 Add support for localization to the Web Inspector. Clients need to
683 implement localizedStringsURL() to return the URL of the
684 InspectorLocalizedStrings.js that best matches the user's language.
686 * English.lproj: Added.
687 * English.lproj/InspectorLocalizedStrings.js: Added.
688 * WebCore.xcodeproj/project.pbxproj: Add InspectorLocalizedStrings.js.
689 * page/InspectorClient.h: Add localizedStringsURL.
690 * page/InspectorController.cpp: Add localizedStringsURL that calls
691 the client. Also added a version exposed to JavaScript.
692 * page/InspectorController.h: Add localizedStringsURL.
693 * page/inspector/ConsolePanel.js: Call WebInspector.UIString
694 for user visible strings.
695 * page/inspector/DatabasePanel.js: Ditto.
696 * page/inspector/DocumentPanel.js: Ditto.
697 * page/inspector/ImagePanel.js: Ditto.
698 * page/inspector/MetricsSidebarPane.js: Ditto.
699 * page/inspector/NetworkPanel.js: Ditto.
700 * page/inspector/Panel.js: Ditto.
701 * page/inspector/PropertiesSidebarPane.js: Ditto.
702 * page/inspector/Resource.js: Ditto.
703 * page/inspector/ResourceCategory.js: Ditto.
704 * page/inspector/SourcePanel.js: Ditto.
705 * page/inspector/StylesSidebarPane.js: Ditto.
706 * page/inspector/inspector.css: Use pre-wrap so database errors can use \n.
707 * page/inspector/inspector.html: Remove some user visible strings.
708 * page/inspector/inspector.js: Added WebInspector.UIString and call
709 WebInspector.UIString for user visible strings. Some code needed to be
710 moved to WebInspector.loaded to use UIString after the localized strings
712 * platform/graphics/svg/SVGImageEmptyClients.h:
713 (WebCore::SVGEmptyFrameLoaderClient::redirectDataToPlugin): Remove WebCore:: prefix.
714 (WebCore::SVGEmptyInspectorClient::createPage): Ditto.
715 (WebCore::SVGEmptyInspectorClient::localizedStringsURL): Add empty stub.
716 (WebCore::SVGEmptyInspectorClient::highlight): Remove WebCore:: prefix.
717 (WebCore::SVGEmptyInspectorClient::inspectedURLChanged): Ditto.
719 2007-11-17 Timothy Hatcher <timothy@apple.com>
723 Reworte String.sprintf to fix many bad bugs and to not use RegExp. Also added
724 String.vsprintf so it can be used later for the localization function.
726 This version only supports argument reordering, precision for floats, and these
727 format characters: d, f, s and @. Any unsupported format characters are logged
728 and substituted like strings.
730 * page/inspector/utilities.js:
732 2007-11-17 Alexey Proskuryakov <ap@webkit.org>
736 * editing/Editor.h: Made canSmartCopyOrDelete public, as Windows WebView still needs it.
738 2007-11-17 Alexey Proskuryakov <ap@webkit.org>
742 http://bugs.webkit.org/show_bug.cgi?id=15969
743 Eliminate Editor::deleteRange()
745 No change in functionality.
747 * editing/CompositeEditCommand.h: Removed unimplemented deleteKeyPressed().
749 * editing/Editor.cpp:
750 (WebCore::Editor::deleteWithDirection):
751 (WebCore::Editor::cut):
752 (WebCore::Editor::performDelete):
754 Moved relevant Editor::deleteRange() functionality to its callers.
755 Removed deleteSelectionWithSmartDelete(void), which was more confusing than helpful
758 * editing/mac/EditorMac.mm:
759 (WebCore::initializeKillRingIfNeeded):
760 (WebCore::Editor::addToKillRing):
761 (WebCore::Editor::yank):
762 (WebCore::Editor::yankAndSelect):
763 (WebCore::Editor::setMark):
764 (WebCore::unionDOMRanges):
765 (WebCore::Editor::deleteToMark):
766 (WebCore::Editor::selectToMark):
767 (WebCore::Editor::swapWithMark):
768 Pushed kill ring handling down from WebCore.
770 * page/mac/WebCoreFrameBridge.h:
771 * page/mac/WebCoreFrameBridge.mm:
772 Removed setMarkDOMRange (the corresponding getter is still needed).
774 * WebCore.base.exp: No longer need to export Editor::deleteRange() and Editor::insertTextWithoutSendingTextEvent().
775 Export the new kill ring functions.
777 2007-11-16 Ryan Leavengood <leavengood@gmail.com>
779 Reviewed by David Kilzer.
781 Build fix: the needed headers for POSIX file functions were not
784 * platform/posix/FileSystemPOSIX.cpp:
786 2007-11-16 Dan Bernstein <mitz@apple.com>
788 Reviewed by Darin Adler.
790 - fix the common case of <http://bugs.webkit.org/show_bug.cgi?id=15994>
791 REGRESSION: Incomplete repaint of CSS image substitution
793 Test: fast/repaint/clip-with-layout-delta.html
795 * rendering/LayoutState.cpp:
796 (WebCore::LayoutState::LayoutState): Account for layout delta when
797 pushing additional clip.
799 2007-11-16 Antti Koivisto <antti@apple.com>
803 Seeking related fixes, updates to match the latest specification
804 - rename loopCount of HTMLMediaElement to playCount
805 - add explicit seeking attribute to HTMLMediaElement to get semantics right
806 - implement the specification behavior that currentTime must immediately return seeked position in HTMLMediaElement
807 instead of MoviePrivateQTKit
808 - fix broken behavior when seeking past end of the media, add tests
809 - replace Movie didEnd callback with broader timeChanged callback (which gets called in didEnd case too)
810 - use setDelayCallbacks: in various MoviePrivateQTKit methods to avoid bug prone synchronous callbacks from QT, make
811 HTMLMediaElement not depend on synchronous callbacks
812 - do some cleanups and simplifications in MoviePrivateQTKit, get rid of m_rateBeforeSeek and m_blockStateUpdate variables
814 Tests: http/tests/media/video-seekable-stall.html
815 media/video-seeking.html
816 media/video-seek-past-end-paused.html
817 media/video-seek-past-end-playing.html
819 * html/HTMLAttributeNames.in:
820 * html/HTMLMediaElement.cpp:
821 (WebCore::HTMLMediaElement::HTMLMediaElement):
822 (WebCore::HTMLMediaElement::load):
823 (WebCore::HTMLMediaElement::movieNetworkStateChanged):
824 (WebCore::HTMLMediaElement::setReadyState):
825 (WebCore::HTMLMediaElement::seek):
826 (WebCore::HTMLMediaElement::seeking):
827 (WebCore::HTMLMediaElement::currentTime):
828 (WebCore::HTMLMediaElement::ended):
829 (WebCore::HTMLMediaElement::play):
830 (WebCore::HTMLMediaElement::pause):
831 (WebCore::HTMLMediaElement::playCount):
832 (WebCore::HTMLMediaElement::setPlayCount):
833 (WebCore::HTMLMediaElement::checkIfSeekNeeded):
834 (WebCore::HTMLMediaElement::movieTimeChanged):
835 (WebCore::HTMLMediaElement::endedPlayback):
836 (WebCore::HTMLMediaElement::updateMovie):
837 * html/HTMLMediaElement.h:
838 * html/HTMLMediaElement.idl:
839 * platform/graphics/Movie.cpp:
840 (WebCore::Movie::timeChanged):
841 * platform/graphics/Movie.h:
842 (WebCore::MovieClient::movieTimeChanged):
843 * platform/graphics/mac/MoviePrivateQTKit.h:
844 * platform/graphics/mac/MoviePrivateQTKit.mm:
845 (WebCore::MoviePrivate::MoviePrivate):
846 (WebCore::MoviePrivate::load):
847 (WebCore::MoviePrivate::play):
848 (WebCore::MoviePrivate::pause):
849 (WebCore::MoviePrivate::currentTime):
850 (WebCore::MoviePrivate::seek):
851 (WebCore::MoviePrivate::doSeek):
852 (WebCore::MoviePrivate::cancelSeek):
853 (WebCore::MoviePrivate::seekTimerFired):
854 (WebCore::MoviePrivate::startCuePointTimerIfNeeded):
855 (WebCore::MoviePrivate::paused):
856 (WebCore::MoviePrivate::updateStates):
857 (WebCore::MoviePrivate::timeChanged):
858 (WebCore::MoviePrivate::didEnd):
860 2007-11-16 Anders Carlsson <andersca@apple.com>
864 <rdar://problem/5603832>
865 XMLHttpRequest readyState 3 & responseText buffer issues.
867 * platform/network/cf/ResourceHandleCFNet.cpp:
868 (WebCore::makeFinalRequest):
869 Add new parameter which controls whether content sniffing should be turned off.
871 (WebCore::ResourceHandle::loadResourceSynchronously):
872 Always content sniff sync loads.
874 * platform/network/cf/ResourceRequestCFNet.cpp:
875 (WebCore::ResourceRequest::doUpdatePlatformRequest):
876 If the ResourceRequest already has a backing CFURLRequest, make a copy of it. This preserves
877 any properties set on the CFURLRequest.
879 2007-11-16 Jon Honeycutt <jhoneycutt@apple.com>
883 <rdar://problem/5605175> Crash closing or leaving window with ViewPoint
886 ViewPoint plugin requires that we pass a valid NPSavedData* to
889 * plugins/win/PluginViewWin.cpp: Pass a valid NPSavedData* to
890 NPP_Destroy. If the plugin allocates data, discard it
892 2007-11-16 Mark Rowe <mrowe@apple.com>
894 Reviewed by Tim Hatcher.
896 Build WebCore as a sub-framework of WebKit in all configurations.
898 * Configurations/WebCore.xcconfig:
899 * WebCore.xcodeproj/project.pbxproj:
901 2007-11-16 Doug Turner <dougt@meer.net>
905 http://bugs.webkit.org/show_bug.cgi?id=16018
906 build bustage when building on debian 4.0
908 Fix build bustage on GTK+ with older versions of Pango.
910 Don't cache the return value since the docs say it can change.
912 * platform/gtk/Language.cpp:
913 (WebCore::defaultLanguage):
915 2007-11-16 Brady Eidson <beidson@apple.com>
919 * platform/SecurityOriginData.h:
920 (WebCore::operator!=): Whoops!
922 2007-11-16 Brady Eidson <beidson@apple.com>
926 Further purify DatabaseTracker to use SecurityOriginData instead of "a String"
929 * WebCore.xcodeproj/project.pbxproj:
930 * WebCore.vcproj/WebCore.vcproj
933 * platform/SecurityOriginData.cpp: Added.
934 (WebCore::SecurityOriginData::SecurityOriginData): Add a constructor that takes a "stringIdentifier"-style string,
935 since that form is what will be stored in the Databases.db on disk
936 (WebCore::SecurityOriginData::stringIdentifier):
937 * platform/SecurityOriginData.h:
938 (WebCore::SecurityOriginData::protocol):
939 (WebCore::SecurityOriginData::host):
940 (WebCore::SecurityOriginData::port):
942 * storage/DatabaseTracker.cpp:
943 (WebCore::SecurityOriginDataHash::hash): Follow the pattern Darin set in FontCache.cpp to make a decent hash for
944 a SecurityOriginData object
945 (WebCore::SecurityOriginDataHash::equal):
946 (WebCore::SecurityOriginDataTraits::deletedValue): "file::1" will never exist in normal operation
947 (WebCore::SecurityOriginDataTraits::emptyValue): "file::2" will never exist in normal operation
948 (WebCore::DatabaseTracker::fullPathForDatabase):
949 (WebCore::DatabaseTracker::populateOrigins):
950 (WebCore::DatabaseTracker::origins):
951 (WebCore::DatabaseTracker::addDatabase):
952 * storage/DatabaseTracker.h:
954 2007-11-16 Alexey Proskuryakov <ap@webkit.org>
958 * WebCore.vcproj/WebCore.vcproj: Removed VoidCallback.cpp, added JSCustomVoidCallback.{h,cpp}.
960 2007-11-16 Nikolas Zimmermann <zimmermann@kde.org>
964 Fixes: http://bugs.webkit.org/show_bug.cgi?id=12290
966 Implement all SVGTextContentElement DOM methods.
967 This is the last missing SVG text feature. SVG fonts is next.
969 Added testcase: svg/custom/text-dom-01-f.svg (tests all new methods)
971 * ksvg2/svg/SVGTextContentElement.cpp:
972 (WebCore::cummulatedCharacterRangeLength):
973 (WebCore::SVGInlineTextBoxQueryWalker::):
974 (WebCore::SVGInlineTextBoxQueryWalker::SVGInlineTextBoxQueryWalker):
975 (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
976 (WebCore::SVGInlineTextBoxQueryWalker::setQueryInputParameters):
977 (WebCore::SVGInlineTextBoxQueryWalker::longResult):
978 (WebCore::SVGInlineTextBoxQueryWalker::floatResult):
979 (WebCore::SVGInlineTextBoxQueryWalker::pointResult):
980 (WebCore::SVGInlineTextBoxQueryWalker::rectResult):
981 (WebCore::SVGInlineTextBoxQueryWalker::stopProcessing):
982 (WebCore::findInlineTextBoxInTextChunks):
983 (WebCore::rootInlineBoxForTextContentElement):
984 (WebCore::executeTextQuery):
985 (WebCore::SVGTextContentElement::getNumberOfChars):
986 (WebCore::SVGTextContentElement::getComputedTextLength):
987 (WebCore::SVGTextContentElement::getSubStringLength):
988 (WebCore::SVGTextContentElement::getStartPositionOfChar):
989 (WebCore::SVGTextContentElement::getEndPositionOfChar):
990 (WebCore::SVGTextContentElement::getExtentOfChar):
991 (WebCore::SVGTextContentElement::getRotationOfChar):
992 (WebCore::SVGTextContentElement::getCharNumAtPosition):
993 (WebCore::SVGTextContentElement::selectSubString):
994 * ksvg2/svg/SVGTextContentElement.h:
995 * rendering/SVGInlineTextBox.h:
997 2007-11-15 Adele Peterson <adele@apple.com>
1001 Fix for <rdar://problem/5566652> CrashTracer: [USER] 3 crashes in Safari at HTMLSelectElement::menuListDefaultEventHandler (reproducible on mactc30.com)
1003 Test: fast/forms/menulist-no-renderer-onmousedown.html
1005 * html/HTMLSelectElement.cpp:
1006 (WebCore::HTMLSelectElement::defaultEventHandler): Nil check the renderer here. None of the default behavior makes sense if there's no renderer.
1007 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Moved the nil check to the main defaultEventHandler.
1009 2007-11-15 Antti Koivisto <antti@apple.com>
1013 Fix <rdar://problem/5601598>
1014 The movie tag should do initialization on need and not during startup.
1016 Initialize Movie MIME type hash on demand
1018 * platform/MIMETypeRegistry.cpp:
1019 (WebCore::initialiseSupportedMovieMIMETypes):
1020 (WebCore::initialiseMIMETypeRegistry):
1021 (WebCore::MIMETypeRegistry::isSupportedMovieMIMEType):
1022 (WebCore::MIMETypeRegistry::getSupportedMovieMIMETypes):
1024 2007-11-15 Mark Rowe <mrowe@apple.com>
1026 Build fix for Qt on Windows.
1028 * xml/XPathStep.cpp:
1029 (WebCore::XPath::Step::nodesInAxis):
1031 2007-11-15 Timothy Hatcher <timothy@apple.com>
1033 Reviewed by Mark Rowe.
1035 Bug 14761: Web Inspector leaks JS objects and DOM nodes
1036 http://bugs.webkit.org/show_bug.cgi?id=14761
1038 * page/InspectorController.cpp:
1039 (WebCore::InspectorController::~InspectorController):
1040 Change the tear down order so that inspectorDestroyed() is called before
1041 InspectorController private data is set to Zero. The inspectorDestroyed()
1042 call ends up closing the WebView and triggering InspectorController::close()
1043 which unprotects m_scriptObject. This didn't happen when the private data
1044 was cleared before calling inspectorDestroyed().
1046 2007-11-15 Mark Rowe <mrowe@apple.com>
1052 2007-11-15 Alexey Proskuryakov <ap@webkit.org>
1056 http://bugs.webkit.org/show_bug.cgi?id=15989
1057 XPath queries with predicates incorrectly retains the current node across unions
1059 Test: fast/xpath/union-context-node.xhtml
1061 * xml/XPathPath.cpp:
1062 (WebCore::XPath::LocationPath::evaluate): Restore context after evaluation.
1063 * xml/XPathStep.cpp:
1064 (WebCore::XPath::Step::evaluate): Do not backup context, as we can easily re-create it.
1066 2007-11-15 Alexey Proskuryakov <ap@webkit.org>
1070 http://bugs.webkit.org/show_bug.cgi?id=15988
1071 REGRESSION: XPath preceding-axis query misses nested elements
1073 Test: fast/xpath/preceding-axis.xhtml
1075 * xml/XPathStep.cpp:
1076 (WebCore::XPath::Step::nodesInAxis): Hopefully correct this time.
1078 2007-11-15 Timothy Hatcher <timothy@apple.com>
1080 Reviewed by Mark Rowe and Sam.
1082 This corrects a couple of issues in the Web Inspector where selected search results
1083 would not have the right text color when the window is inactive or the results are focused.
1085 * page/inspector/inspector.css:
1087 2007-11-15 Timothy Hatcher <timothy@apple.com>
1091 Bug 16007: REGRESSION: Disclosure triangle click zone for resource categories is off by 10 pixels
1092 http://bugs.webkit.org/show_bug.cgi?id=16007
1094 Makes the click width an option on TreeElement and make ResourceCategoryTreeElement
1095 a true subclass of TreeElement. The click width for ResourceCategoryTreeElement is
1096 20 pixels, and the default is 10 pixels.
1098 * page/inspector/ResourceCategory.js:
1099 * page/inspector/treeoutline.js:
1101 2007-11-15 Anders Carlsson <andersca@apple.com>
1105 Pass a VoidCallback to Database::transaction and Database::changeVersion.
1106 This is not yet hooked up to the database machinery.
1108 * WebCore.vcproj/WebCore.vcproj:
1109 * bindings/js/JSDatabaseCustom.cpp:
1110 (WebCore::JSDatabase::changeVersion):
1111 (WebCore::JSDatabase::transaction):
1112 * storage/Database.cpp:
1113 (WebCore::Database::changeVersion):
1114 (WebCore::Database::transaction):
1115 * storage/Database.h:
1117 2007-11-15 Timothy Hatcher <timothy@apple.com>
1121 Bug 16005: Hovering in the breadcrumbs causes jumpy behavior
1122 http://bugs.webkit.org/show_bug.cgi?id=16005
1124 Hovering over cumbs no longer exposes new crumbs. Clicking on a collapsed
1125 crumb will expose as many hidden crumbs as possible to the user. Also crumbs
1126 that have ID attributes will compact to the ID over the tag name.
1128 * page/inspector/DocumentPanel.js:
1130 2007-11-15 Anders Carlsson <andersca@apple.com>
1134 Make the VoidCallback DOM interface behave more like our other DOM interfaces.
1136 * bindings/js/JSCustomVoidCallback.h: Added.
1137 * bindings/js/JSCustomVoidCallback.cpp: Added.
1138 (WebCore::JSCustomVoidCallback::JSCustomVoidCallback):
1139 (WebCore::JSCustomVoidCallback::handleEvent):
1140 VoidCallback implementation that wraps a JS object.
1142 (WebCore::toVoidCallback):
1143 New method that creates a VoidCallback implementation given a JS object.
1145 * bindings/scripts/CodeGeneratorJS.pm:
1146 Specify that VoidCallback can fail conversion and add a custom conversion function.
1148 * html/HTMLMediaElement.cpp:
1149 (WebCore::HTMLMediaElement::movieCuePointReached):
1150 Call handleEvent on the callback.
1152 (WebCore::HTMLMediaElement::removeCuePoint):
1153 Comment out parts of this method, it has already been removed in the HTML5 spec and it relies
1154 on overriding VoidCallback equality.
1156 * html/VoidCallback.cpp: Removed.
1158 * html/VoidCallback.h:
1159 (WebCore::VoidCallback::VoidCallback):
1160 (WebCore::VoidCallback::~VoidCallback):
1161 Make this an abstract class with a pure virtual handleEvent method.
1163 2007-11-15 Adam Roben <aroben@apple.com>
1165 Fix <rdar://5485108> Type-select while a <select> menu is open doesn't work
1167 There were two things broken here:
1168 - WebView now requires a WM_CHAR message to be sent before it will
1169 create a keyboard event with a charCode, but we were only sending
1171 - The popup menu was not updating its focused index when the
1172 <select> element's selectedIndex changed.
1176 * platform/win/PopupMenuWin.cpp:
1177 (WebCore::PopupMenu::updateFromElement): Update the focused index from
1178 the client's selected index.
1179 (WebCore::PopupWndProc): When we receive a WM_CHAR message for a
1180 printable character, manufacture a WM_KEYDOWN message for it and post
1181 both that and the current WM_CHAR message to the WebView.
1183 2007-11-15 Brady Eidson <beidson@apple.com>
1187 * storage/DatabaseTracker.cpp:
1188 (WebCore::DatabaseTracker::fullPathForDatabase):
1189 (WebCore::DatabaseTracker::databaseNamesForOrigin):
1191 2007-11-15 Brady Eidson <beidson@apple.com>
1193 Reviewed by John and Sam
1195 Stubbing out everything required for a WebKit API for databases
1197 Biggest change in WebCore is that we passed around SecurityOriginData as the representation
1198 of a SecurityOrigin, instead of a String or a SecurityOrigin itself (which is an opaque object
1199 that has a different purpose besides just hanging on to the data)
1202 * WebCore.xcodeproj/project.pbxproj:
1204 * platform/SecurityOrigin.cpp:
1205 * platform/SecurityOrigin.h:
1206 * platform/SecurityOriginData.h: Added. Simple object to encapsulate the 3
1207 pieces of data in the SecurityOrigin tuple
1208 (WebCore::SecurityOriginData::SecurityOriginData):
1209 (WebCore::SecurityOriginData::protocol):
1210 (WebCore::SecurityOriginData::host):
1211 (WebCore::SecurityOriginData::port):
1212 (WebCore::SecurityOriginData::toString): Simple concatenation of the 3 components,
1215 * storage/Database.cpp:
1216 (WebCore::Database::Database): Use SecurityOriginData instead
1218 * storage/DatabaseTracker.cpp:
1219 (WebCore::DatabaseTracker::fullPathForDatabase):
1220 (WebCore::DatabaseTracker::databaseNamesForOrigin):
1221 (WebCore::DatabaseTracker::deleteDatabasesWithOrigin):
1222 (WebCore::DatabaseTracker::deleteDatabase):
1223 * storage/DatabaseTracker.h:
1225 * storage/DatabaseTrackerClient.h: Added. For dispatching notifications up to WebKit
1226 (WebCore::DatabaseTrackerClient::~DatabaseTrackerClient):2007-11-15 Jon Honeycutt <jhoneycutt@apple.com>
1228 2007-11-15 Jon Honeycutt <jhoneycutt@apple.com>
1232 NP_ASFILEONLY streams should not buffer data in m_deliveryData.
1234 * plugins/win/PluginStreamWin.cpp:
1235 (WebCore::PluginStreamWin::didReceiveData):
1237 2007-11-15 Justin Garcia <justin.garcia@apple.com>
1239 Reviewed by Adele Peterson.
1241 <rdar://problem/5497643> Crash at Node::isDescendantOf when switching out of Edit HTML Source mode
1243 A textarea that contained the selection was removed but the selection wasn't cleared,
1244 and we'd crash in code that assumed a valid, in-document selection.
1246 * editing/SelectionController.cpp:
1247 (WebCore::removingNodeRemovesPosition): Clear the selection if the node being removed is the
1248 shadowAncestorNode of the node that contains the position, not just if the node being removed
1249 contains that shadowAncestorNode.
1251 2007-11-15 Nikolas Zimmermann <zimmermann@kde.org>
1255 Fix logic error: calculateGlyphBoundaries takes RTL text into account itself, no need to adjust offsets before.
1257 * rendering/SVGInlineTextBox.cpp:
1258 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
1259 (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
1261 2007-11-15 Anders Carlsson <andersca@apple.com>
1265 <rdar://problem/5562470>
1266 openDatabase does not work when the version string is empty
1268 If the string is empty, pass a real empty string to sqlite3_bind_text16.
1270 * platform/sql/SQLiteStatement.cpp:
1271 (WebCore::SQLiteStatement::bindText):
1273 2007-11-15 Anders Carlsson <andersca@apple.com>
1277 Get rid of SQLiteStatement::bindText and rename bindText16 to bindText.
1278 Remove the copy parameter from bindText and bindBlob and always copy passed in data instead.
1280 * loader/icon/IconDatabase.cpp:
1281 (WebCore::IconDatabase::setIconIDForPageURLInSQLDatabase):
1282 (WebCore::IconDatabase::removePageURLFromSQLDatabase):
1283 (WebCore::IconDatabase::getIconIDForIconURLFromSQLDatabase):
1284 (WebCore::IconDatabase::addIconURLToSQLDatabase):
1285 (WebCore::IconDatabase::getImageDataForIconURLFromSQLDatabase):
1286 (WebCore::IconDatabase::writeIconSnapshotToSQLDatabase):
1287 * platform/sql/SQLiteStatement.cpp:
1288 (WebCore::SQLiteStatement::prepare):
1289 * platform/sql/SQLiteStatement.h:
1290 * storage/Database.cpp:
1291 (WebCore::setTextValueInDatabase):
1292 * storage/DatabaseTracker.cpp:
1293 (WebCore::DatabaseTracker::fullPathForDatabase):
1294 (WebCore::DatabaseTracker::databaseNamesForOrigin):
1295 (WebCore::DatabaseTracker::addDatabase):
1297 2007-11-14 Brady Eidson <beidson@apple.com>
1299 Rubberstamped by Sam
1301 * platform/SecurityOrigin.h: Lets make this an unsigned short and *not* rule out half the possible ports?
1303 2007-11-14 Alexey Proskuryakov <ap@webkit.org>
1305 Reviewed by Justin Garcia.
1307 http://bugs.webkit.org/show_bug.cgi?id=15781
1308 REGRESSION: Ligatures fail to form when typing in Devanagari (because WebKit can't handle
1309 a marked range that covers half of a composed character sequence)
1311 Test: platform/mac/editing/input/devanagari-ligature.html
1313 This fix is somewhat of a hack, as it asks editing commands to work with invalid selections.
1314 However, this is not entirely new for them, as Roman accents are typed in a similar manner.
1316 In the future, we probably want to make commands work with ranges (or Positions explicitly).
1318 * editing/Editor.cpp:
1319 (WebCore::Editor::selectComposition): Force selection to composition range.
1320 * editing/InsertTextCommand.cpp:
1321 (WebCore::InsertTextCommand::input): Force ending selection to inserted text range.
1323 2007-11-14 Beth Dakin <bdakin@apple.com>
1327 Fix for <rdar://problem/5540855> REGRESSION: Combination of client-
1328 side image map and <a> tag is not working properly (15522)
1330 * html/HTMLMapElement.cpp:
1331 (WebCore::HTMLMapElement::checkDTD): Allow <map> to have both block
1332 and inline children rather than just block children. This matches
1335 2007-11-14 Justin Garcia <justin.garcia@apple.com>
1337 Reviewed by Alexey Proskuryakov.
1339 <rdar://problem/5546763> CrashTracer: [USER] 362 crashes at WebCore::DeleteSelectionCommand::mergeParagraphs
1341 * editing/DeleteSelectionCommand.cpp:
1342 (WebCore::DeleteSelectionCommand::handleGeneralDelete):
1343 Removed an irrelevant FIXME.
1344 (WebCore::DeleteSelectionCommand::mergeParagraphs): If the block that contained the end of the selection
1345 hasn't been removed but has been emptied by deletion, we would to try and fail to create a VisiblePosition
1346 inside that block, which could lead to a crash. If that happens, there's no content in the block to move,
1347 so just remove the block and return.
1348 Preserve m_needPlaceholder during the call to moveParagraphs, since it may change it and since it does
1349 its own placeholder insertion when necessary.
1350 (WebCore::DeleteSelectionCommand::doApply): No need to check m_needPlaceholder before calling mergeParagraphs,
1351 because it handles preserving m_needPlaceholder when it calls moveParagraphs.
1353 2007-11-14 Timothy Hatcher <timothy@apple.com>
1357 Bug 14380: Long DOM ancestry breadcrumb lists get cut off
1358 http://bugs.webkit.org/show_bug.cgi?id=14380
1360 The breadcumbs will now be compacted and collapsed if there isn't enough room
1361 to show everything. The collapsing algorithm always affects the crumbs that
1362 are farthest away from the selected or hovered crumb first.
1364 * page/inspector/DocumentPanel.js:
1365 * page/inspector/inspector.css:
1367 2007-11-14 Anders Carlsson <andersca@apple.com>
1369 Use the correct include path.
1371 * platform/Cursor.h:
1372 * plugins/win/PluginPackageWin.h:
1373 * plugins/win/PluginStreamWin.h:
1375 2007-11-13 Brady Eidson <beidson@apple.com>
1379 http://bugs.webkit.org/show_bug.cgi?id=15976 - ASSERT/crash when SQLTransactionCallback throws an exception
1381 * storage/SQLTransaction.cpp:
1382 (WebCore::SQLTransaction::deliverTransactionCallback): Make a transaction error for the case where the
1383 SQLTransactionCallback fails
1384 (WebCore::SQLTransaction::deliverTransactionErrorCallback): Don't assert on the error callback, but null check it
1385 and make the commit/rollback decision accordingly
1387 2007-11-13 Oliver Hunt <oliver@apple.com>
1391 <rdar://problem/5365030> calling dataWithPDFInsideRect on an SVG with a gradient crashes (14780)
1393 When drawing directly to PDF CG may delay the use of the gradient function until outside our
1394 standard drawing path, which in turn could let us invalidate the caches before they were used.
1396 To work around this we now store the cached stops in a RefCounted object, so that we can ensure
1397 that cache exists as long as required.
1399 * platform/graphics/svg/SVGPaintServerGradient.cpp:
1400 (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
1401 * platform/graphics/svg/SVGPaintServerGradient.h:
1402 * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
1403 (WebCore::cgGradientCallback):
1404 (WebCore::CGShadingRefForLinearGradient):
1405 (WebCore::CGShadingRefForRadialGradient):
1406 (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
1408 2007-11-13 Anders Carlsson <andersca@apple.com>
1412 * platform/Cursor.h:
1413 * plugins/win/PluginPackageWin.h:
1414 * plugins/win/PluginStreamWin.h:
1416 2007-11-13 Geoffrey Garen <ggaren@apple.com>
1418 Reviewed by Anders Carlsson.
1420 Renamed Shared to RefCounted.
1422 * ForwardingHeaders/wtf/RefCounted.h: Copied from WebCore/ForwardingHeaders/wtf/Shared.h.
1423 * ForwardingHeaders/wtf/Shared.h: Removed.
1424 * bindings/js/JSSVGPODTypeWrapper.h:
1425 * css/CSSFontFace.h:
1426 * css/CSSRuleList.h:
1431 * css/StyleSheetList.h:
1434 * dom/DOMImplementation.h:
1436 * dom/EventListener.h:
1437 * dom/NamedNodeMap.h:
1439 * dom/NodeFilterCondition.h:
1441 * dom/QualifiedName.h:
1443 * dom/RangeException.h:
1444 * dom/RegisteredEventListener.h:
1446 * editing/EditCommand.h:
1447 * history/BackForwardList.h:
1448 * history/CachedPage.h:
1449 * history/HistoryItem.cpp:
1450 (WebCore::HistoryItem::HistoryItem):
1451 * history/HistoryItem.h:
1452 * html/CanvasGradient.h:
1453 * html/CanvasPattern.h:
1454 * html/CanvasRenderingContext2D.h:
1455 * html/CanvasStyle.h:
1456 * html/HTMLCollection.h:
1457 * html/MediaError.h:
1458 * html/TimeRanges.h:
1459 * html/VoidCallback.h:
1460 * ksvg2/css/SVGRenderStyle.cpp:
1461 (WebCore::SVGRenderStyle::SVGRenderStyle):
1462 * ksvg2/css/SVGRenderStyle.h:
1463 * ksvg2/css/SVGRenderStyleDefs.cpp:
1464 (StyleFillData::StyleFillData):
1465 (StyleStrokeData::StyleStrokeData):
1466 (StyleStopData::StyleStopData):
1467 (StyleTextData::StyleTextData):
1468 (StyleClipData::StyleClipData):
1469 (StyleMaskData::StyleMaskData):
1470 (StyleMarkerData::StyleMarkerData):
1471 (StyleMiscData::StyleMiscData):
1472 * ksvg2/css/SVGRenderStyleDefs.h:
1473 * ksvg2/svg/SVGAngle.cpp:
1474 (WebCore::SVGAngle::SVGAngle):
1475 * ksvg2/svg/SVGAngle.h:
1476 * ksvg2/svg/SVGAnimatedTemplate.h:
1477 * ksvg2/svg/SVGElementInstanceList.h:
1478 * ksvg2/svg/SVGException.h:
1479 * ksvg2/svg/SVGList.h:
1480 * ksvg2/svg/SVGPathSeg.h:
1481 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
1482 (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
1483 * ksvg2/svg/SVGPreserveAspectRatio.h:
1484 * ksvg2/svg/SVGRenderingIntent.h:
1485 * ksvg2/svg/SVGTransform.h:
1486 * ksvg2/svg/SVGUnitTypes.h:
1487 * loader/DocumentLoader.h:
1488 * loader/FormState.h:
1489 * loader/ResourceLoader.h:
1490 * loader/TextResourceDecoder.h:
1491 * loader/icon/IconRecord.h:
1494 * page/DOMSelection.h:
1498 * page/InspectorController.cpp:
1501 * platform/ArrayImpl.h:
1502 * platform/CString.h:
1503 * platform/Cursor.h:
1504 * platform/DeprecatedValueListImpl.cpp:
1505 (WebCore::DeprecatedValueListImpl::Private::Private):
1506 * platform/FileChooser.h:
1507 * platform/FontFallbackList.h:
1508 * platform/FontFamily.cpp:
1509 (WebCore::FontFamily::FontFamily):
1510 * platform/FontFamily.h:
1511 * platform/FontSelector.h:
1512 * platform/GlyphPageTreeNode.h:
1513 * platform/PopupMenu.h:
1514 * platform/RegularExpression.cpp:
1515 * platform/ScrollBar.h:
1516 * platform/SharedBuffer.h:
1517 * platform/StringImpl.h:
1518 * platform/graphics/Icon.h:
1519 * platform/graphics/svg/SVGResource.h:
1520 * platform/network/FormData.cpp:
1521 (WebCore::FormData::FormData):
1522 * platform/network/FormData.h:
1523 * platform/network/ResourceHandle.h:
1524 * platform/network/ResourceHandleClient.h:
1525 * rendering/RenderStyle.cpp:
1526 (WebCore::StyleSurroundData::StyleSurroundData):
1527 (WebCore::StyleBoxData::StyleBoxData):
1528 (WebCore::StyleVisualData::StyleVisualData):
1529 (WebCore::StyleBackgroundData::StyleBackgroundData):
1530 (WebCore::StyleMarqueeData::StyleMarqueeData):
1531 (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
1532 (WebCore::StyleMultiColData::StyleMultiColData):
1533 (WebCore::StyleTransformData::StyleTransformData):
1534 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1535 (WebCore::StyleRareInheritedData::StyleRareInheritedData):
1536 (WebCore::StyleInheritedData::StyleInheritedData):
1537 * rendering/RenderStyle.h:
1538 * rendering/SVGCharacterLayoutInfo.h:
1539 (WebCore::SVGCharOnPath::SVGCharOnPath):
1540 * storage/SQLResultSetRowList.h:
1542 * xml/XMLHttpRequest.h:
1543 * xml/XMLSerializer.h:
1544 * xml/XPathEvaluator.h:
1545 * xml/XPathExpression.h:
1546 * xml/XPathNSResolver.h:
1547 * xml/XPathResult.h:
1549 * xml/XSLTProcessor.h:
1551 2007-11-13 Brady Eidson <beidson@apple.com>
1553 Reviewed by Mark Rowe
1555 Remove errantly added files, and fix the idl (for reference's sake)
1557 * storage/JSCustomSQLStatementCallback.h: Removed.
1558 * storage/JSCustomSQLStatementErrorCallback.h: Removed.
1559 * storage/JSCustomSQLTransactionCallback.h: Removed.
1560 * storage/JSCustomSQLTransactionErrorCallback.h: Removed.
1561 * storage/SQLStatementCallback.idl:
1563 2007-11-13 Adam Roben <aroben@apple.com>
1565 Fix a bug and improve upon Brady's fix
1569 * bindings/js/JSSQLTransactionCustom.cpp:
1570 (WebCore::JSSQLTransaction::executeSql): Made the code a little
1571 clearer and more correct.
1572 * loader/icon/IconDatabase.cpp: Put parentheses around the expansion
1573 of IS_ICON_SYNC_THREAD() so that ASSERT_NOT_SYNC_THREAD() does the
1574 comparison it meant to.
1576 2007-11-13 Sam Weinig <sam@webkit.org>
1578 Fix Qt and Gtk builds.
1580 * WebCore.pro: Remove non-generated idl files.
1582 2007-11-13 Mark Rowe <mrowe@apple.com>
1584 Remove removed file from the project.
1588 2007-11-13 Brady Eidson <beidson@apple.com>
1592 * bindings/js/JSSQLTransactionCustom.cpp:
1593 (WebCore::JSSQLTransaction::executeSql):
1595 2007-11-13 Adam Roben <aroben@apple.com>
1597 Add WindowMessageBroadcaster
1599 This class is used to listen in on messages sent to HWNDs. Multiple
1600 WindowMessageListeners can be notified about messages sent to a single
1601 HWND, and one WindowMessageListener can listen to messages from
1606 * WebCore.vcproj/WebCore.vcproj: Added new files to project.
1607 * platform/win/WindowMessageBroadcaster.cpp: Added.
1608 (WebCore::instancesMap): Static helper.
1609 (WebCore::WindowMessageBroadcaster::addListener): Registers a listener
1610 for a particular HWND.
1611 (WebCore::WindowMessageBroadcaster::removeListener): Removes a
1612 listener for a particular HWND.
1613 (WebCore::WindowMessageBroadcaster::WindowMessageBroadcaster):
1614 (WebCore::WindowMessageBroadcaster::~WindowMessageBroadcaster):
1615 (WebCore::WindowMessageBroadcaster::destroy): Removes this broadcaster
1616 from the instancesMap, removes all of its listeners, unsubclasses the
1617 window, and deletes the broadcaster.
1618 (WebCore::WindowMessageBroadcaster::unsubclassWindow): Unsubclasses
1619 the window (which means that SubclassedWndProc won't be called again
1621 (WebCore::WindowMessageBroadcaster::SubclassedWndProc): Notifies all
1622 the listeners about every message sent to the HWND
1623 * platform/win/WindowMessageBroadcaster.h: Added.
1624 (WebCore::WindowMessageBroadcaster::listeners):
1625 (WebCore::WindowMessageBroadcaster::originalWndProc):
1626 * platform/win/WindowMessageListener.h: Added.
1628 2007-11-13 Geoffrey Garen <ggaren@apple.com>
1630 Reviewed by Sam Weinig.
1632 Moved Shared.h into wtf so it could be used in more places. Retained
1633 TreeShared, but moved it to its own file, TreeShared.h.
1635 * ForwardingHeaders/wtf/Shared.h: Added.
1636 * WebCore.xcodeproj/project.pbxproj:
1637 * bindings/js/JSSVGPODTypeWrapper.h:
1638 * css/CSSFontFace.h:
1639 * css/CSSRuleList.h:
1644 * css/StyleSheetList.h:
1646 * dom/DOMImplementation.h:
1648 * dom/EventListener.h:
1649 * dom/NamedNodeMap.h:
1650 * dom/NodeFilterCondition.h:
1653 * dom/RangeException.h:
1654 * dom/RegisteredEventListener.h:
1656 * history/BackForwardList.h:
1657 * history/CachedPage.h:
1658 * history/HistoryItem.h:
1659 * html/CanvasGradient.h:
1660 * html/CanvasPattern.h:
1661 * html/HTMLCollection.h:
1662 * html/MediaError.h:
1663 * html/TimeRanges.h:
1664 * html/VoidCallback.h:
1665 * ksvg2/css/SVGRenderStyleDefs.h:
1666 * ksvg2/svg/SVGAnimatedTemplate.h:
1667 * ksvg2/svg/SVGElementInstanceList.h:
1668 * ksvg2/svg/SVGList.h:
1669 * ksvg2/svg/SVGPathSeg.h:
1670 * ksvg2/svg/SVGPreserveAspectRatio.h:
1671 * ksvg2/svg/SVGRenderingIntent.h:
1672 * ksvg2/svg/SVGTransform.h:
1673 * ksvg2/svg/SVGUnitTypes.h:
1674 * loader/DocumentLoader.h:
1675 * loader/FormState.h:
1676 * loader/ResourceLoader.h:
1677 * loader/TextResourceDecoder.h:
1678 * loader/icon/IconRecord.h:
1681 * page/DOMSelection.h:
1684 * page/InspectorController.cpp:
1687 * platform/ArrayImpl.h:
1688 * platform/CString.h:
1689 * platform/DeprecatedValueListImpl.cpp:
1690 * platform/FontFallbackList.h:
1691 * platform/FontFamily.h:
1692 * platform/FontSelector.h:
1693 * platform/GlyphPageTreeNode.h:
1694 * platform/PopupMenu.h:
1695 * platform/RegularExpression.cpp:
1696 * platform/ScrollBar.h:
1697 * platform/Shared.h: Removed.
1698 * platform/SharedBuffer.h:
1699 * platform/StringImpl.h:
1700 * platform/graphics/Icon.h:
1701 * platform/graphics/svg/SVGResource.h:
1702 * platform/network/FormData.h:
1703 * platform/network/ResourceHandleClient.h:
1704 * rendering/RenderStyle.h:
1705 * rendering/SVGCharacterLayoutInfo.h:
1706 * storage/SQLResultSetRowList.h:
1708 * xml/XMLSerializer.h:
1709 * xml/XPathEvaluator.h:
1710 * xml/XPathExpression.h:
1711 * xml/XPathNSResolver.h:
1712 * xml/XPathResult.h:
1714 2007-11-13 Brady Eidson <beidson@apple.com>
1716 JS bindings by Anders, reviewed by Brady
1717 WebCore changes by Brady, reviewed by Anders and Tim
1719 Adapt to the new iteration of the HTML5 client-side storage spec.
1721 Based largely on implementation feedback we generated in landing our first version of this API and also
1722 on the input of others in the community, the database spec went through a large overhaul that addresses
1723 many concerns. Amongst other changes/improvements:
1724 - SQLTransaction object is added and all transactions are explicit. In addition, since the API manages
1725 transactions explicitly, transaction-related language in SQL statements is disallowed
1726 - executeSql() is now on a transaction object instead of the database object.
1727 - Database.changeVersion() now takes place within the context of a transaction. Therefore the version
1728 change can be atomic along with the statements that modify the DB schema
1730 Most of the logic now takes place during the "transaction steps," which the specification clearly lays out
1731 as a chain of events on the SQLTransaction object where processing is handed off between being processed
1732 asynchronously and calling back up to javascript. To accomplish this voodoo, SQLTransaction has a series of
1733 methods that roughly match up with the "transaction steps" and it keeps a pointer to the next step.
1735 * DerivedSources.make:
1736 * WebCore.xcodeproj/project.pbxproj:
1738 * bindings/js/JSDatabaseCustom.cpp:
1739 (WebCore::JSDatabase::changeVersion): Adapt to the new API
1740 (WebCore::JSDatabase::transaction): Added
1742 * bindings/js/JSSQLTransactionCustom.cpp: Added.
1743 (WebCore::JSSQLTransaction::executeSql): Added
1745 * page/DOMWindow.cpp:
1746 (WebCore::DOMWindow::openDatabase): Add the new arguments
1748 * page/DOMWindow.idl:
1750 * page/inspector/DatabasePanel.js: Use the new API
1752 * storage/ChangeVersionWrapper.cpp: Added. Implementation of "SQLTransactionWrapper" that enforces
1753 changing the version of the database
1754 (WebCore::ChangeVersionWrapper::ChangeVersionWrapper):
1755 (WebCore::ChangeVersionWrapper::performPreflight):
1756 (WebCore::ChangeVersionWrapper::performPostflight):
1757 * storage/ChangeVersionWrapper.h: Added.
1758 (WebCore::ChangeVersionWrapper::sqlError):
1760 * storage/Database.cpp: Removed the "main thread" and "background thread" sqlite handles as all sqlite operations can now
1761 happen solely on the background thread - most of these changes result from that change
1762 (WebCore::Database::Database): Removed an obsolete FIXME
1763 (WebCore::Database::openAndVerifyVersion):
1764 (WebCore::Database::getVersionFromDatabase):
1765 (WebCore::Database::setVersionInDatabase):
1766 (WebCore::Database::versionMatchesExpected): Atomically guarantee that the current version and expected version are the same
1767 (WebCore::Database::performOpenAndVerify):
1768 (WebCore::Database::performTransactionStep): Added, as a hook for the DatabaseTransactionTask on the DatabaseThread
1769 (WebCore::Database::changeVersion): Changed for the new API from JS
1770 (WebCore::Database::transaction): Added, for the new API from JS
1771 (WebCore::Database::scheduleTransaction): Add a transaction to this Database's transaction queue
1772 (WebCore::Database::scheduleTransactionStep): Schedule the current transaction to be called on the background thread
1773 (WebCore::Database::scheduleTransactionCallback): Schedule the current transaction to perform a callback on the main thread
1774 (WebCore::Database::performGetTableNames):
1775 (WebCore::Database::deliverAllPendingCallbacks):
1776 (WebCore::Database::deliverPendingCallback):
1777 (WebCore::Database::setExpectedVersion):
1778 * storage/Database.h:
1779 * storage/Database.idl:
1781 * storage/DatabaseTask.cpp: Changed DatabaseTask to create a mutex on demand, and use the existence of that mutex
1782 to replace the m_synchronous flag
1783 (WebCore::DatabaseTask::performTask):
1784 (WebCore::DatabaseTask::lockForSynchronousScheduling):
1785 (WebCore::DatabaseTask::waitForSynchronousCompletion):
1786 (WebCore::DatabaseTransactionTask::DatabaseTransactionTask):
1787 * storage/DatabaseTask.h:
1789 * storage/SQLError.h: New API object
1791 * storage/SQLResultSet.cpp:
1792 (WebCore::SQLResultSet::SQLResultSet): Small changes to the API object
1793 * storage/SQLResultSet.h:
1794 * storage/SQLResultSet.idl:
1796 * storage/SQLStatement.cpp: Added.
1797 (WebCore::SQLStatement::SQLStatement):
1798 (WebCore::SQLStatement::execute): Actually execute the sql statement on the SQLiteDatabase if it's still valid
1799 (WebCore::SQLStatement::setVersionMismatchedError): Flag this statement as bad before it even starts in case
1800 of an actual version vs. expected version mismatch
1801 (WebCore::SQLStatement::performCallback): Call the right callback (SQLStatement or SQLStatementError) for this statement
1802 * storage/SQLStatement.h: Added.
1803 (WebCore::SQLStatement::hasStatementCallback):
1804 (WebCore::SQLStatement::hasStatementErrorCallback):
1805 (WebCore::SQLStatement::sqlError): Get the error for this statement, if any
1807 * storage/SQLTransaction.cpp: Added.
1808 (WebCore::SQLTransaction::SQLTransaction):
1809 (WebCore::SQLTransaction::executeSQL): Entry point for the API from JS
1810 (WebCore::SQLTransaction::enqueueStatement): Add a new statement onto the queue
1811 (WebCore::SQLTransaction::performNextStep): Call the method for the next step
1812 (WebCore::SQLTransaction::performPendingCallback): Call the method for the pending callback
1813 (WebCore::SQLTransaction::openTransactionAndPreflight): Open a transaction to the database and preflight
1814 using the SQLTransactionWrapper, if any
1815 (WebCore::SQLTransaction::deliverTransactionCallback): Deliver the transaction callback to the javascript thread
1816 (WebCore::SQLTransaction::scheduleToRunStatements): Convinience to schedule this transaction on the database thread
1817 and make runStatements() the next step
1818 (WebCore::SQLTransaction::runStatements): Start running the sql statements queued up for this transaction
1819 (WebCore::SQLTransaction::getNextStatement): Bring the next statement off the queue
1820 (WebCore::SQLTransaction::runCurrentStatement): Execute the current statement
1821 (WebCore::SQLTransaction::deliverStatementCallback): Deliver the SQLStatementCallback for this statement
1822 (WebCore::SQLTransaction::postflightAndCommit): Postflight the transaction using SQLTransactionWrapper and commit it
1823 (WebCore::SQLTransaction::handleTransactionError): Make the right call for any error that occurred on the Transaction
1824 (WebCore::SQLTransaction::deliverTransactionErrorCallback): Deliver the SQLTransactionErrorCallback
1825 (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): Either do a final commit or rollback to cleanup the
1826 transaction after it error'ed out
1827 * storage/SQLTransaction.h:
1828 (WebCore::SQLTransactionWrapper::~SQLTransactionWrapper):
1829 (WebCore::SQLTransaction::database):
1830 * storage/SQLTransaction.idl:
1832 The following were made obsolete by the new version of the API:
1833 * bindings/js/JSCustomSQLCallback.cpp: Removed.
1834 * bindings/js/JSCustomSQLCallback.h: Removed.
1835 * bindings/js/JSCustomVersionChangeCallback.cpp: Removed.
1836 * bindings/js/JSCustomVersionChangeCallback.h: Removed.
1837 * storage/DatabaseCallback.cpp: Removed.
1838 * storage/DatabaseCallback.h: Removed.
1839 * storage/SQLCallback.h: Removed.
1840 * storage/SQLCallback.idl: Removed.
1841 * storage/VersionChangeCallback.h: Removed.
1842 * storage/VersionChangeCallback.idl: Removed.
1844 2007-11-13 Dan Bernstein <mitz@apple.com>
1846 Reviewed by Beth Dakin.
1848 - fix <rdar://problem/5551163> REGRESSION: Cursor does not change to arrow on "X" button in google maps, making it hard to click
1850 * css/html4.css: Added a 'cursor: auto' rule for links.
1851 * manual-tests/link-cursor-auto.html: Added.
1853 2007-11-13 Dan Bernstein <mitz@apple.com>
1855 Reviewed by Beth Dakin.
1857 - fix <rdar://problem/5516272> Reproducible crash in RenderObject::setStyle involving going Back from a non-HTML document (Bookmarks view, PDF view)
1859 The root cause for the crash is that when a non-HTML view enters the
1860 frame, the frame's document pointer keeps pointing at the last HTML-type
1861 document it contained. This patch does not address the root cause, but
1862 makes changes to account for that condition.
1864 * loader/FrameLoader.cpp:
1865 (WebCore::FrameLoader::receivedMainResourceError): Do not change the
1866 frame's current document's page cache state here.
1867 (WebCore::FrameLoader::invalidateCurrentItemCachedPage): If the frame's
1868 current document is in fact the history item being invalidated, then
1869 set its page cache state here.
1871 2007-11-12 Antti Koivisto <antti@apple.com>
1875 Fix that 'timeupdate' and 'waiting' events were never dispatched.
1877 Add explicit m_paused attribute instead of trying to derive paused state from
1878 underlying media. Call updatePlayState() to start/stop media playback
1879 when any attribute that affects active playback state changes. This matches
1882 Test: http/tests/media/video-play-stall.html
1884 * html/HTMLMediaElement.cpp:
1885 (WebCore::HTMLMediaElement::HTMLMediaElement):
1886 (WebCore::HTMLMediaElement::setReadyState):
1887 (WebCore::HTMLMediaElement::paused):
1888 (WebCore::HTMLMediaElement::play):
1889 (WebCore::HTMLMediaElement::pause):
1890 (WebCore::HTMLMediaElement::checkIfSeekNeeded):
1891 (WebCore::HTMLMediaElement::movieDidEnd):
1892 (WebCore::HTMLMediaElement::updatePlayState):
1893 * html/HTMLMediaElement.h:
1895 2007-11-13 John Sullivan <sullivan@apple.com>
1899 removed recently-added PreferredType concept; we found a better way to do what
1900 ths was accomplishing
1902 * bridge/WindowFeatures.h:
1903 (WebCore::WindowFeatures::WindowFeatures):
1904 removed definition of PreferredType
1906 * page/ContextMenuController.cpp:
1907 (WebCore::openNewWindow):
1908 removed use of PreferredType
1910 2007-11-12 Alexey Proskuryakov <ap@webkit.org>
1914 http://bugs.webkit.org/show_bug.cgi?id=15954
1915 Move DOM Selection operations out of SelectionController
1917 No change in functionality.
1919 * editing/SelectionController.cpp:
1920 (WebCore::SelectionController::setSelectedRange):
1921 * editing/SelectionController.h:
1922 * page/DOMSelection.cpp:
1923 (WebCore::DOMSelection::anchorNode):
1924 (WebCore::DOMSelection::baseNode):
1925 (WebCore::DOMSelection::anchorOffset):
1926 (WebCore::DOMSelection::baseOffset):
1927 (WebCore::DOMSelection::focusNode):
1928 (WebCore::DOMSelection::extentNode):
1929 (WebCore::DOMSelection::focusOffset):
1930 (WebCore::DOMSelection::extentOffset):
1931 (WebCore::DOMSelection::isCollapsed):
1932 (WebCore::DOMSelection::type):
1933 (WebCore::DOMSelection::rangeCount):
1934 (WebCore::DOMSelection::collapse):
1935 (WebCore::DOMSelection::collapseToEnd):
1936 (WebCore::DOMSelection::collapseToStart):
1937 (WebCore::DOMSelection::empty):
1938 (WebCore::DOMSelection::setBaseAndExtent):
1939 (WebCore::DOMSelection::setPosition):
1940 (WebCore::DOMSelection::modify):
1941 (WebCore::DOMSelection::extend):
1942 (WebCore::DOMSelection::getRangeAt):
1943 (WebCore::DOMSelection::removeAllRanges):
1944 (WebCore::DOMSelection::addRange):
1945 (WebCore::DOMSelection::deleteFromDocument):
1946 (WebCore::DOMSelection::containsNode):
1947 (WebCore::DOMSelection::selectAllChildren):
1948 (WebCore::DOMSelection::toString):
1949 * page/DOMSelection.h:
1950 Moved all DOM API methods to DOMSelection; changed SelectionController::setSelectedRange()
1951 to return its result directly instead of via an ExceptionCode that no caller wanted.
1953 * editing/Editor.cpp:
1954 (WebCore::Editor::deleteRange):
1955 (WebCore::Editor::removeFormattingAndStyle):
1956 (WebCore::Editor::selectComposition):
1957 (WebCore::Editor::setComposition):
1958 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
1959 Adapted for SelectionController::setSelectedRange() now returning a bool.
1960 SelectionController::toString() is no longer avasilable, use plainText() explicitly.
1962 * WebCore.base.exp: Changed SelectionController::setSelectedRange() signature.
1964 2007-11-12 Dan Bernstein <mitz@apple.com>
1966 Reviewed by Darin Adler.
1968 - <http://bugs.webkit.org/show_bug.cgi?id=15890>
1969 Most of www.aol.com still redraws unnecessarily when headline/photo section changes
1971 Test: fast/repaint/invisible-objects.html
1973 Avoid repainting invisible blocks if they are enclosed in a layer that
1974 contains no visible objects.
1976 * rendering/RenderBlock.cpp:
1977 (WebCore::RenderBlock::layoutBlock):
1978 * rendering/RenderBox.cpp:
1979 (WebCore::RenderBox::absoluteClippedOverflowRect):
1981 2007-11-12 Timothy Hatcher <timothy@apple.com>
1983 Reviewed by Mark Rowe.
1985 Prevent selecting a word in the breadcrumb or the styles section when double
1986 clicking on a DOM node in the outline tree.
1988 * page/inspector/DocumentPanel.js: Call preventDefault() when a mousedown event
1989 with a detail of 2 or higher comes in. This prevents the selection.
1990 * page/inspector/inspector.css: Mark the breadcrumb as user-select: none.
1992 2007-11-12 Oliver Hunt <oliver@apple.com>
1996 <rdar://problem/5537289> REGRESSION: Dragging a link or an image from an IFrame causes the page to not respond to clicks afterwards (15460)
1998 EventHandler needs to reset these fields when a drag terminates, otherwise
1999 EventHandler is left in an inconsistent state when a drag is initiated on a
2000 page with multiple frames.
2002 * page/EventHandler.cpp:
2003 (WebCore::EventHandler::cancelDragAndDrop):
2004 (WebCore::EventHandler::performDragAndDrop):
2005 (WebCore::EventHandler::clearDragState):
2006 * page/EventHandler.h:
2008 2007-11-12 Oliver Hunt <oliver@apple.com>
2010 Reviewed by Darin and Antti.
2012 Return behaviour for 0 sized pattern back to what it was prior to r27704
2014 This change in behaviour broke two layout tests in DRT, so correcting it
2015 corrects existing tests.
2017 * platform/graphics/cg/ImageBufferCG.cpp:
2019 2007-11-12 Timothy Hatcher <timothy@apple.com>
2023 <rdar://problem/5268311> REGRESSION (Safari 2-3): Exception thrown when calling -[WebDataSource subresources]
2025 * page/mac/WebCoreFrameBridge.mm:
2026 (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
2027 If the SharedBuffer is null insert an empty NSData instead of nil.
2029 2007-11-12 Darin Adler <darin@apple.com>
2033 - http://bugs.webkit.org/show_bug.cgi?id=15947
2034 speed up page loading a bit by inlining
2036 * loader/FrameLoader.cpp: (WebCore::FrameLoader::isLocationChange):
2037 Factored out the slow case of isScheduledLocationChangePending into this.
2039 * loader/FrameLoader.h:
2040 (WebCore::FrameLoader::isScheduledLocationChangePending): Added an
2041 inline check of the far and away most common case, where m_scheduledRedirection
2042 is 0; the rest is in the isLocationChange function.
2044 2007-11-12 George Staikos <staikos@kde.org>
2048 Extract the text match marker highlight color into RenderTheme instead
2049 of the hardcoded yellow.
2051 * rendering/InlineTextBox.cpp:
2052 (WebCore::InlineTextBox::paintTextMatchMarker):
2053 * rendering/RenderTheme.cpp:
2054 (WebCore::RenderTheme::platformTextSearchHighlightColor):
2055 * rendering/RenderTheme.h:
2057 2007-11-12 Mark Rowe <mrowe@apple.com>
2059 Fix deadlock on launch on the Mac.
2061 * loader/icon/IconDatabase.cpp:
2062 (WebCore::IconDatabase::open): Restore unlock that was mistakenly removed in r27717.
2064 2007-11-12 Justin Haygood <jhaygood@reaktix.com>
2068 http://bugs.webkit.org/show_bug.cgi?id=15955
2069 Reimplement threading functions in IconDatabase and SQLiteDatabase in terms of the threading abstractions
2071 * loader/icon/IconDatabase.cpp:
2072 (WebCore::IconDatabase::open):
2073 (WebCore::IconDatabase::close):
2074 * loader/icon/IconDatabase.h:
2075 * platform/sql/SQLiteDatabase.cpp:
2076 (WebCore::SQLiteDatabase::SQLiteDatabase):
2077 (WebCore::SQLiteDatabase::open):
2078 (WebCore::SQLiteDatabase::close):
2079 * platform/sql/SQLiteDatabase.h:
2081 2007-11-12 Adam Roben <aroben@apple.com>
2085 * config.h: Touch because VS apparently can't figure out which files
2086 depend on ResourceResponse.h.
2087 * WebCore.vcproj/WebCore.vcproj: Add ResourceResponseBase files to
2088 project and remove old ResourceResponse files.
2090 2007-11-12 Julien Chaffraix <julien.chaffraix@gmail.com>
2094 http://bugs.webkit.org/show_bug.cgi?id=15334
2095 Split ResourceResponse into platform specific files
2099 * WebCore.vcproj/WebCore.vcproj:
2100 * WebCore.xcodeproj/project.pbxproj:
2101 * platform/network/ResourceResponse.cpp: Removed.
2102 * platform/network/ResourceResponse.h: Removed.
2103 * platform/network/ResourceResponseBase.cpp: Copied from platform/network/ResourceResponse.cpp.
2104 (WebCore::ResourceResponseBase::asResourceResponse):
2105 (WebCore::ResourceResponseBase::isHTTP):
2106 (WebCore::ResourceResponseBase::url):
2107 (WebCore::ResourceResponseBase::setUrl):
2108 (WebCore::ResourceResponseBase::mimeType):
2109 (WebCore::ResourceResponseBase::setMimeType):
2110 (WebCore::ResourceResponseBase::expectedContentLength):
2111 (WebCore::ResourceResponseBase::setExpectedContentLength):
2112 (WebCore::ResourceResponseBase::textEncodingName):
2113 (WebCore::ResourceResponseBase::setTextEncodingName):
2114 (WebCore::ResourceResponseBase::suggestedFilename):
2115 (WebCore::ResourceResponseBase::setSuggestedFilename):
2116 (WebCore::ResourceResponseBase::httpStatusCode):
2117 (WebCore::ResourceResponseBase::setHTTPStatusCode):
2118 (WebCore::ResourceResponseBase::httpStatusText):
2119 (WebCore::ResourceResponseBase::setHTTPStatusText):
2120 (WebCore::ResourceResponseBase::httpHeaderField):
2121 (WebCore::ResourceResponseBase::setHTTPHeaderField):
2122 (WebCore::ResourceResponseBase::httpHeaderFields):
2123 (WebCore::ResourceResponseBase::isAttachment):
2124 (WebCore::ResourceResponseBase::setExpirationDate):
2125 (WebCore::ResourceResponseBase::expirationDate):
2126 (WebCore::ResourceResponseBase::setLastModifiedDate):
2127 (WebCore::ResourceResponseBase::lastModifiedDate):
2128 (WebCore::ResourceResponseBase::updateResourceResponse):
2129 * platform/network/ResourceResponseBase.h: Copied from platform/network/ResourceResponse.h.
2130 (WebCore::ResourceResponseBase::ResourceResponseBase):
2131 * platform/network/cf/ResourceResponse.h: Added.
2132 (WebCore::ResourceResponse::ResourceResponse):
2133 * platform/network/curl/ResourceResponse.h: Added.
2134 (WebCore::ResourceResponse::ResourceResponse):
2135 (WebCore::ResourceResponse::doUpdateResourceResponse):
2136 * platform/network/mac/ResourceResponse.h: Added.
2137 (WebCore::ResourceResponse::ResourceResponse):
2138 * platform/network/qt/ResourceResponse.h: Added.
2139 (WebCore::ResourceResponse::ResourceResponse):
2140 (WebCore::ResourceResponse::doUpdateResourceResponse):
2142 2007-11-11 Justin Haygood <jhaygood@reaktix.com>
2144 Reviewed by Adam Roben.
2146 http://bugs.webkit.org/show_bug.cgi?id=15939
2147 Adds a currentThread API for use by SQLiteDatabase, etc.
2149 * platform/Threading.h:
2150 * platform/ThreadingNone.cpp:
2151 (WebCore::currentThread):
2152 * platform/gtk/ThreadingGtk.cpp:
2153 (WebCore::identifierByGthreadHandle):
2155 * platform/pthreads/ThreadingPthreads.cpp:
2156 (WebCore::identifierByPthreadHandle):
2157 (WebCore::currentThread):
2159 2007-11-11 Dan Bernstein <mitz@apple.com>
2161 Reviewed by Adam Roben.
2163 - fix http://bugs.webkit.org/show_bug.cgi?id=15942
2164 REGRESSION: Selecting "Edit Html" tab in Blogger causes crash (Assertion failed: isRange())
2166 Test: editing/selection/cleared-by-relayout.html
2168 * editing/Selection.cpp:
2169 (WebCore::Selection::toRange): Check if the selection has been cleared
2172 2007-11-11 Darin Adler <darin@apple.com>
2174 Reviewed by Mark Rowe.
2176 - fix line numbers that were off since my recent patch
2178 * platform/SegmentedString.h:
2179 (WebCore::SegmentedSubstring::SegmentedSubstring): Reversed the sense of m_excludeLineNumbers
2180 and rename it to m_doNotExcludeLineNumbers.
2181 (WebCore::SegmentedSubstring::excludeLineNumbers): Updated.
2182 (WebCore::SegmentedSubstring::doNotExcludeLineNumbers): Added.
2183 (WebCore::SegmentedSubstring::setExcludeLineNumbers): Updated.
2184 (WebCore::SegmentedString::advance): Use doNotExcludeLineNumbers to reverse the sense and fix
2185 the regression, but keep the speediness. I accidentally had removed a ! here.
2187 * platform/SegmentedString.cpp:
2188 (WebCore::SegmentedString::advanceSlowCase): Use doNotExcludeLineNumbers.
2190 2007-11-11 Oliver Hunt <oliver@apple.com>
2194 Fix for <rdar://problem/5585334> numfuzz: integer overflows opening
2195 malformed SVG file in WebCore::ImageBuffer::create. Add protection
2196 against a potential overflow.
2198 * platform/graphics/cg/ImageBufferCG.cpp:
2200 2007-11-11 Antti Koivisto <antti@apple.com>
2204 Fix a bunch of cases where the exception code is checked by the function but is not zeroed first.
2206 * bindings/js/kjs_binding.cpp:
2207 (KJS::setDOMException):
2209 (WebCore::Attr::setPrefix):
2211 (WebCore::Document::createElement):
2213 (WebCore::Element::setPrefix):
2215 (WebCore::Range::setStart):
2216 (WebCore::Range::setEnd):
2217 (WebCore::Range::isPointInRange):
2218 (WebCore::Range::comparePoint):
2219 (WebCore::Range::compareBoundaryPoints):
2220 (WebCore::Range::deleteContents):
2221 (WebCore::Range::processContents):
2222 (WebCore::Range::extractContents):
2223 (WebCore::Range::insertNode):
2224 (WebCore::Range::setStartAfter):
2225 (WebCore::Range::setEndBefore):
2226 (WebCore::Range::setEndAfter):
2227 (WebCore::Range::selectNode):
2228 (WebCore::Range::surroundContents):
2229 (WebCore::Range::setStartBefore):
2230 * editing/TextIterator.cpp:
2231 (WebCore::TextIterator::TextIterator):
2232 * html/CanvasRenderingContext2D.cpp:
2233 (WebCore::CanvasRenderingContext2D::createPattern):
2234 * html/HTMLMediaElement.cpp:
2235 (WebCore::HTMLMediaElement::play):
2236 (WebCore::HTMLMediaElement::pause):
2237 * html/HTMLSelectElement.cpp:
2238 (WebCore::HTMLSelectElement::add):
2239 (WebCore::HTMLSelectElement::setOption):
2240 * xml/XPathEvaluator.cpp:
2241 (WebCore::XPathEvaluator::evaluate):
2243 2007-11-11 Darin Adler <darin@apple.com>
2247 - http://bugs.webkit.org/show_bug.cgi?id=15945
2248 speed up GraphicsContextCG typical case by skipping roundToDevicePixels
2250 * platform/graphics/cg/GraphicsContextCG.cpp:
2251 (WebCore::GraphicsContext::restorePlatformState): Clear the flag since we no
2252 longer know if the transform is identity or not.
2253 (WebCore::GraphicsContext::strokeArc): Removed an extra set of redundant
2254 CGContextSave/RestoreGState.
2255 (WebCore::GraphicsContext::beginTransparencyLayer): Clear the flag since we no
2256 longer know if the transform is identity or not.
2257 (WebCore::GraphicsContext::endTransparencyLayer): Ditto.
2258 (WebCore::GraphicsContext::scale): Ditto.
2259 (WebCore::GraphicsContext::rotate): Ditto.
2260 (WebCore::GraphicsContext::translate): Ditto.
2261 (WebCore::GraphicsContext::concatCTM): Ditto.
2262 (WebCore::GraphicsContext::roundToDevicePixels): Return quickly if the transform
2263 is known to be identity, and record that fact when we discover it otherwise.
2265 * platform/graphics/cg/GraphicsContextPlatformPrivate.h:
2266 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
2267 Added a m_userToDeviceTransformKnownToBeIdentity flag, initialized to false.
2269 2007-11-11 Darin Adler <darin@apple.com>
2273 - http://bugs.webkit.org/show_bug.cgi?id=15944
2274 streamline SegmentedString to speed up parsing
2276 I measured a speed-up of the page load test while developing this patch. I don't
2277 have a precise figure, though.
2279 * html/HTMLTokenizer.h: Removed unneeded lineNumberPtr() function. Also renamed
2280 lineno to m_lineNumber.
2281 * html/HTMLTokenizer.cpp:
2282 (WebCore::HTMLTokenizer::processListing): Don't pass 0 to the advance function
2283 since we don't want to update a line number.
2284 (WebCore::HTMLTokenizer::parseSpecial): Ditto.
2285 (WebCore::HTMLTokenizer::parseComment): Pass the line number data member directly
2286 instead of lineNumberPtr() since the advance function now takes a reference.
2287 (WebCore::HTMLTokenizer::parseServer): Ditto.
2288 (WebCore::HTMLTokenizer::parseProcessingInstruction): Ditto.
2289 (WebCore::HTMLTokenizer::parseText): Ditto.
2290 (WebCore::HTMLTokenizer::parseEntity): Ditto.
2291 (WebCore::HTMLTokenizer::parseTag): Ditto.
2292 (WebCore::HTMLTokenizer::write): Ditto.
2294 * loader/FTPDirectoryDocument.cpp: (WebCore::FTPDirectoryTokenizer::write):
2295 * loader/TextDocument.cpp: (WebCore::TextTokenizer::write):
2296 Don't pass 0 to the advance function.
2298 * platform/SegmentedString.h: (WebCore::SegmentedString::advance): Streamlined
2299 the most common case, and pushed less common cases into a separate function
2300 that is not inlined. Also got rid of a branch by separating the case with a
2301 line number from the case without one.
2303 * platform/SegmentedString.cpp: (WebCore::SegmentedString::advanceSlowCase):
2304 Added. The aforementioned less common cases are here.
2306 2007-11-11 Antti Koivisto <antti@apple.com>
2308 Forgot to do this review change (and test HTTP commit).
2310 * html/HTMLMediaElement.cpp:
2311 (WebCore::HTMLMediaElement::play):
2313 2007-11-11 Antti Koivisto <antti@apple.com>
2317 - Update play() and pause() to match current HTML5 draft
2318 - send events asynchronously
2319 - add timeupdate event to pause
2320 - rethrow load() exception, not others
2321 - Use list for async events to get ordering right
2323 Tests: media/video-pause-empty-events.html
2324 media/video-play-empty-events.html
2325 media/video-play-pause-events.html
2326 media/video-play-pause-exception.html
2328 * html/HTMLMediaElement.cpp:
2329 (WebCore::HTMLMediaElement::dispatchEventAsync):
2330 (WebCore::HTMLMediaElement::asyncEventTimerFired):
2331 (WebCore::HTMLMediaElement::play):
2332 (WebCore::HTMLMediaElement::pause):
2333 * html/HTMLMediaElement.h:
2335 2007-11-11 Nikolas Zimmermann <zimmermann@kde.org>
2339 Fixes: http://bugs.webkit.org/show_bug.cgi?id=6424 (<text>, <tspan> dominant-baseline attribute is not respected)
2341 Add (basic) support for dominant-baseline / alignment-baseline text properties.
2342 Note: there are no official testcases, and no-one implemented it before. Only ASV3
2343 supported dominant-baseline, but not correct it seems.
2345 * rendering/SVGRootInlineBox.cpp:
2346 (WebCore::dominantBaselineToShift):
2347 (WebCore::alignmentBaselineToShift):
2348 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
2350 2007-11-11 Adam Roben <aroben@apple.com>
2352 Add wrappers around CoCreateInstance to COMPtr
2354 I followed the example of the Query constructor and query method by
2355 adding a Create constructor and create method.
2359 * platform/win/COMPtr.h:
2360 (COMPtr::COMPtr): Added a new constructor that calls
2362 (COMPtr::create): Added.
2363 (COMPtr::createInstance): Added.
2365 2007-11-11 Alexey Proskuryakov <ap@nypop.com>
2369 http://bugs.webkit.org/show_bug.cgi?id=15896
2370 More editing cleanup
2372 No functionality changes.
2374 * dom/Node.h: Moved several editing-related methods elsewhere.
2375 * dom/Node.cpp: (WebCore::Node::maxCharacterOffset): Renamed from maxOffset()
2376 to highlight that it is a match to offsetInCharacters(), and much different from other
2377 offset-related methods. Added ASSERT_NOT_REACHED(), as callers are supposed to check
2378 offsetInCharacters() before calling this.
2380 * dom/CharacterData.cpp: (WebCore::CharacterData::maxCharacterOffset):
2381 * dom/CharacterData.h: (WebCore::CharacterData::isCharacterDataNode):
2382 Updated for above renamings.
2384 * dom/Comment.{h,cpp}: Removed an override for offsetInCharacters(), which is already present in CharacterData.
2386 * dom/Document.{h,cpp}: Folded updateSelection() into Frame::selectionLayoutChanged().
2390 (WebCore::Position::uncheckedPreviousOffset): Moved from Node::previousOffset().
2391 (WebCore::Position::uncheckedNextOffset): Moved from Node::NextOffset().
2392 (WebCore::Position::previous): Adapted to the above move.
2393 (WebCore::Position::next): Ditto.
2394 (WebCore::Position::upstream): Removed an isBR() check, since a non-BR element cannot have a BR renderer (I think),
2395 and BR elements are covered by editingIgnoresContent().
2396 (WebCore::Position::downstream): Ditto.
2397 (WebCore::caretMaxRenderedOffset): Moved from Node::caretMaxRenderedOffset().
2398 (WebCore::Position::rendersInDifferentPosition): Updated for the above moves.
2400 * dom/PositionIterator.h: Added a comment describing this class from the original check-in.
2401 * dom/PositionIterator.cpp:
2402 (WebCore::PositionIterator::increment): Updated for the above moves.
2403 (WebCore::PositionIterator::decrement): Ditto.
2405 * dom/ProcessingInstruction.h:
2406 * dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::maxCharacterOffset):
2407 ProcessingInstruction was already returning true from offsetInCharacters(), but didn't override maxCharacterOffset().
2408 I think that implementing it has no actual effect, as PIs are not rendered, but it looks cleaner this way.
2411 (WebCore::Range::selectNodeContents):
2412 * editing/ApplyStyleCommand.cpp:
2413 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
2414 (WebCore::ApplyStyleCommand::applyInlineStyle):
2415 (WebCore::maxRangeOffset):
2416 (WebCore::ApplyStyleCommand::removeInlineStyle):
2417 (WebCore::ApplyStyleCommand::splitTextAtStartIfNeeded):
2418 (WebCore::ApplyStyleCommand::splitTextAtEndIfNeeded):
2419 (WebCore::ApplyStyleCommand::splitTextElementAtStartIfNeeded):
2420 (WebCore::ApplyStyleCommand::splitTextElementAtEndIfNeeded):
2421 (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
2422 * editing/CompositeEditCommand.cpp:
2423 (WebCore::CompositeEditCommand::insertNodeAt):
2424 (WebCore::CompositeEditCommand::positionOutsideTabSpan):
2425 * editing/DeleteSelectionCommand.cpp:
2426 (WebCore::DeleteSelectionCommand::handleGeneralDelete):
2427 * editing/InsertLineBreakCommand.cpp:
2428 (WebCore::InsertLineBreakCommand::doApply):
2429 * editing/InsertParagraphSeparatorCommand.cpp:
2430 (WebCore::InsertParagraphSeparatorCommand::doApply):
2431 * editing/InsertTextCommand.cpp:
2432 (WebCore::InsertTextCommand::insertTab):
2433 * editing/visible_units.cpp:
2434 (WebCore::previousLinePosition):
2435 (WebCore::nextLinePosition):
2436 Updated for the above moves.
2438 * editing/Editor.cpp:
2439 (WebCore::Editor::advanceToNextMisspelling): Added a missing rangeCompliantEquivalent() call.
2441 * editing/TextIterator.cpp:
2442 (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): Changed the condition to obviously
2443 match a maxCharacterOffset() call made after it; hopefully, this doesn't break any border cases.
2444 (WebCore::SimplifiedBackwardsTextIterator::advance): Updated for the above moves.
2446 * editing/htmlediting.h:
2447 * editing/htmlediting.cpp:
2448 (WebCore::canHaveChildrenForEditing): Removed a bogus comment: I don't thin BRs have a special ability to accept
2449 child nodes, other than via DOM manipulation, which is not specific to BRs.
2450 (WebCore::rangeCompliantEquivalent): Removed a check for BR, which is already covered by editingIgnoresContent().
2451 (WebCore::maxDeepOffset): Ditto.
2452 (WebCore::caretMinOffset): Moved from Node. Changed some runtime checks that seemingly cannot fail into assertions.
2453 (WebCore::caretMaxOffset): Ditto.
2455 * page/EventHandler.cpp:
2456 (WebCore::EventHandler::handleMousePressEventSingleClick): Pass 0 to VisiblePosition constructor instead of
2457 caretMinOffset. I didn't want to include htmlediting.h here, and I think that VisiblePosition constructor
2458 will take care of adjusting the offset.
2460 * page/Frame.cpp: (WebCore::Frame::selectionLayoutChanged): Folded Document::updateSelection() here.
2461 * page/mac/WebCoreFrameBridge.mm:
2462 (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]): Added missing rangeCompliantEquivalent() calls.
2463 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForRenderer): Changed to not round-trip via editing.
2464 Changed some runtime checks that seemingly cannot fail into assertions.
2466 2007-11-11 Darin Adler <darin@apple.com>
2470 - updated for JSRegExp function changes
2472 * platform/RegularExpression.cpp:
2473 (WebCore::RegularExpression::Private::compile):
2474 (WebCore::RegularExpression::match):
2476 2007-11-10 Mark Rowe <mrowe@apple.com>
2480 * platform/UnicodeRange.h:
2482 2007-11-10 Mark Rowe <mrowe@apple.com>
2484 Qt Windows build fix.
2486 * platform/UnicodeRange.h:
2488 2007-11-10 Nikolas Zimmermann <zimmermann@kde.org>
2492 Fixes: http://bugs.webkit.org/show_bug.cgi?id=15937 (Add glyph-orientation-horizontal/vertical support)
2493 Fixes: http://bugs.webkit.org/show_bug.cgi?id=13971 (text-anchor support on vertical text seems slightly off)
2495 Add glyph-orientation-* support for text & textPath. (90/180/270 and 'auto')
2496 Also fix all vertical text handling - for text & textPath! (especially latin1 characters auto orientation in vertical writing modes)
2498 * WebCore.pro: Add platform/UnicodeRange.cpp to build
2499 * WebCore.xcodeproj/project.pbxproj: Dito.
2500 * rendering/SVGCharacterLayoutInfo.cpp: Respect orientationShiftX/Y & angle in characterTransform()
2501 (WebCore::SVGChar::characterTransform):
2502 * rendering/SVGCharacterLayoutInfo.h: New variables.
2503 (WebCore::SVGCharOnPath::SVGCharOnPath):
2504 (WebCore::SVGChar::SVGChar):
2505 * rendering/SVGRootInlineBox.cpp: Added glyph-orientation-* handling.
2506 (WebCore::glyphOrientationToAngle):
2507 (WebCore::glyphOrientationIsMultiplyOf180Degrees):
2508 (WebCore::calculateGlyphAdvanceAndShiftRespectingOrientation):
2509 (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
2510 (WebCore::cummulatedWidthOrHeightOfTextChunk):
2511 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
2513 2007-11-10 Timothy Hatcher <timothy@apple.com>
2515 Reviewed by Sam Weinig.
2517 * page/inspector/StylesSidebarPane.js: Fix the wording of a comment
2518 and switch over to use getUniqueProperties in another place.
2520 2007-11-10 John Sullivan <sullivan@apple.com>
2522 Reviewed by Sam Weinig
2524 Rest of fix for 5394877
2526 * bindings/js/kjs_window.cpp:
2527 (KJS::Window::isSafeScript):
2528 Don't log unsafe JavaScript attempts in the other version of isSafeScript() if in
2529 private browsing mode either.
2531 2007-11-10 Nikolas Zimmermann <zimmermann@kde.org>
2535 Fix function name difference - header said 'unicodeRangeForCharacter', actually
2536 implemented function is 'findCharUnicodeRange'. They are not compiled yet.
2538 * platform/UnicodeRange.h:
2540 2007-11-10 Dan Bernstein <mitz@apple.com>
2542 Reviewed by Darin Adler.
2544 - fix <rdar://problem/5450655> Control-clicking text in a link can surprisingly select only part of the link, should select entire link
2546 No test because context menu events cannot be tested in DumpRenderTree.
2548 * page/EventHandler.cpp:
2549 (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent): Added.
2550 If the click occurred in an active link, selects the entire link
2551 element. Otherwise selects the closest word.
2552 (WebCore::EventHandler::sendContextMenuEvent): Call
2553 selectClosestWordOrLinkFromMouseEvent().
2554 * page/EventHandler.h:
2556 2007-11-10 John Sullivan <sullivan@apple.com>
2558 Reviewed by Tim Hatcher
2560 - fixed <rdar://problem/5394877> Safari should not log unsafe JavaScript attempts when
2561 in private browsing mode (only an issue if Log JavaScript Exceptions is turned on)
2563 * bindings/js/kjs_window.cpp:
2564 (KJS::Window::isSafeScript):
2565 Don't log unsafe JavaScript attempts to console or chromeClient if in private browsing mode
2567 2007-11-10 Alexey Proskuryakov <ap@webkit.org>
2571 http://bugs.webkit.org/show_bug.cgi?id=15922
2572 Implement more of Mozilla Selection API
2574 Tests: editing/selection/containsNode.html
2575 editing/selection/deleteFromDocument.html
2576 editing/selection/extend.html
2577 editing/selection/selectAllChildren.html
2579 * editing/SelectionController.cpp:
2580 (WebCore::SelectionController::deleteFromDocument):
2581 (WebCore::SelectionController::containsNode):
2582 (WebCore::SelectionController::selectAllChildren):
2583 (WebCore::SelectionController::extend):
2584 * editing/SelectionController.h:
2585 Added deleteFromDocument(), containsNode(), and selectAllChildren(). Reimplemented extend(),
2586 which existed, but didn't match Firefox behavior and wasn't exposed via bindings.
2587 Removed a comment mentioning removeRange(), as this method makes no sense without multiple
2588 selection range support.
2590 * page/DOMSelection.cpp:
2591 (WebCore::DOMSelection::extend):
2592 (WebCore::DOMSelection::deleteFromDocument):
2593 (WebCore::DOMSelection::containsNode):
2594 (WebCore::DOMSelection::selectAllChildren):
2595 * page/DOMSelection.h:
2596 * page/DOMSelection.idl:
2597 Exposed the new methods.
2599 2007-11-10 Alexey Proskuryakov <ap@webkit.org>
2603 http://bugs.webkit.org/show_bug.cgi?id=15892
2604 DOM Range operations are not implemented for ProcessingInstruction nodes
2606 Test: fast/dom/Range/range-processing-instructions.html
2609 (WebCore::Range::processContents): Implemented ProcessingInstruction cases.
2610 (WebCore::Range::checkNodeWOffset): Removed a FIXME - yes, I think that we are supposed
2611 to use ProcessingInstruction.data.
2613 2007-11-09 Timothy Hatcher <timothy@apple.com>
2615 Reviewed by Mark Rowe.
2617 Bug 12054: Ability to serialize an element subtree (into clipboard?) from the DOM inspector
2618 http://bugs.webkit.org/show_bug.cgi?id=12054
2620 - Add support code for routing copy events to the focused element.
2621 - Implement copying the currently selected DOM node. The node
2622 and it's subtree is copied to the clipboard. If the node has no
2623 outerHTML, the nodeValue is copied (text nodes, etc.)
2624 - Implement copy for the resource sidebar. The URL is copied for the
2625 currently selected resource.
2627 * page/inspector/DocumentPanel.js:
2628 * page/inspector/inspector.js:
2630 2007-11-09 Antti Koivisto <antti@apple.com>
2634 Fix occasional blank video with poster attribute.
2637 * html/HTMLMediaElement.cpp:
2638 (WebCore::HTMLMediaElement::load):
2639 (WebCore::HTMLMediaElement::didRestoreFromCache):
2640 Just calling updateFromElement() does the right thing for both poster image and video.
2642 2007-11-04 Sam Weinig <sam@webkit.org>
2644 Reviewed by Adam Roben.
2646 <rdar://problem/5435940>
2647 The COM bindings for the DOM should be autogenerated like the other DOM bindings
2649 Initial commit of the autogeneration of the COM DOM Bindings. No behavior change
2650 is being introduced in this patch and to insure that no conflicts arise, a temporary
2651 prefix of "GEN_" has been used for all the new classes.
2653 The build architecture for these bindings differs slightly from the other autogenerated
2654 bindings. Instead of building in WebCore and migrating the resuting code to WebKit (as
2655 is done for the Objective-C bindigs currently), the IDLs and generation scripts are
2656 migrated to WebKit and built there. This is done with a series of scripts and Makefiles.
2658 This commit includes:
2659 - Hand rolled root class/Interface GEN_DOMObject used to facilated object creation
2661 - Generating all of the Core DOM and most of HTML and CSS
2662 - Generating Event, EventTarget, and EventListener
2664 * WebCore.vcproj/MigrateIDLAndScripts.make: Added.
2665 * WebCore.vcproj/WebCore.vcproj:
2666 * WebCore.vcproj/migrate-idls.sh: Added.
2667 * bindings/scripts/CodeGenerator.pm:
2668 * bindings/scripts/CodeGeneratorCOM.pm: Added.
2669 * dom/EventListener.h: Make the isWindowEvent parameter default to false
2670 to allow autogeneration based on the IDL.
2672 2007-11-09 Tristan O'Tierney <tristan@apple.com>
2674 Reviewed by Timothy Hatcher.
2676 This patch is for the WebKit side of <rdar://problem/5591115>.
2677 We need a way to tell context menu navigations, such as "Open in New Window"
2678 to override any sort of browser preference for tab based navigation.
2680 * bridge/WindowFeatures.h:
2681 (WebCore::WindowFeatures::WindowFeatures):
2682 Added a new struct member var, preferredType
2683 and an accompanying enum type PreferredType
2684 to send a window type recommendation up to the Chrome.
2686 * page/ContextMenuController.cpp:
2687 (WebCore::openNewWindow):
2688 Set the window features to recommend a new Window for
2689 "Open in New Window" context menu action.
2691 2007-11-08 Adam Roben <aroben@apple.com>
2693 Fix <rdar://5483519> Pressing Enter on selected buttons should fire onclick
2695 We now match the behavior of Firefox and IE, which is to always just
2696 send a click event to the focused button when the Enter key is pressed
2697 (previously we were submitting forms directly in some cases).
2701 Test: fast/forms/enter-clicks-buttons.html
2703 * html/HTMLButtonElement.cpp:
2704 (WebCore::HTMLButtonElement::defaultEventHandler): Don't do anything
2705 fancy when Enter is pressed on a <button type=button> -- just send a
2706 click event like we do for other button types.
2707 * html/HTMLInputElement.cpp:
2708 (WebCore::HTMLInputElement::defaultEventHandler): Treat type=button
2709 the same way we treat type=submit and type=reset: just send a click
2710 event when Enter is pressed.
2712 2007-11-09 Dan Bernstein <mitz@apple.com>
2714 Reviewed by Antti Koivisto.
2716 - fix a bug in invisible layer culling: dynamically changing a
2717 descendant of an invisible layer to be visible did not work
2719 Test: fast/layers/layer-content-visibility-change.html
2721 * rendering/RenderLayer.cpp:
2722 (WebCore::RenderLayer::setHasVisibleContent): If we got visible content,
2723 make sure that our stacking context rebuilds its z-order lists to
2726 2007-11-09 David Hyatt <hyatt@apple.com>
2728 Clean up matrix() parsing. Make sure the first four arguments can be lengths or numbers. The last two
2729 args can be lengths or numbers or percents.
2733 * WebCore.xcodeproj/project.pbxproj:
2734 * css/CSSParser.cpp:
2735 (WebCore::TransformOperationInfo::TransformOperationInfo):
2736 (WebCore::CSSParser::parseTransform):
2737 * rendering/RenderStyle.h:
2738 (WebCore::MatrixTransformOperation::apply):
2740 2007-11-09 Beth Dakin <bdakin@apple.com>
2744 Fix for <rdar://problem/5586370> CSS Transform - incorrect matrix
2745 math leads to crazy problems
2747 Transform matrices accept the first four parameters as CSS lengths.
2748 CSS lengths get mapped into WebCore::Lengths as percents by
2749 WebCore::convertToLength(). Percent lengths cannot call value(). It
2750 does not yield a correct result and it asserts on Debug builds.
2752 * rendering/RenderStyle.h:
2753 (WebCore::MatrixTransformOperation::apply): Instead of calling
2754 value() on the lengths, call calcValue. This fixes the assert and
2757 2007-11-09 Simon Hausmann <hausmann@kde.org>
2759 Reviewed by nobody, build/link fix for Qt/Windows.
2761 userIdleTime() is stubbed in win/SystemTimeWin.cpp, so don't
2764 * platform/qt/TemporaryLinkStubs.cpp:
2766 2007-11-09 Simon Hausmann <hausmann@kde.org>
2770 Fix ContextMenu allocation in the Qt port.
2772 Store all items and submenus value based in ContextMenu and ContextMenuItem.
2773 That fixes the crashes when the context menu was populated with sub-menus because
2774 of the use of temporary ContextMenu objects like this:
2776 ContextMenu subMenu(...);
2777 subMenu.appendItem(...);
2778 subMenu.appendItem(...);
2780 subMenuItem.setSubMenu(&subMenu); // temporary pointer, need to _copy_ contents
2782 * platform/ContextMenu.h:
2783 * platform/ContextMenuItem.h:
2784 * platform/PlatformMenuDescription.h:
2785 * platform/qt/ContextMenuItemQt.cpp:
2786 (WebCore::ContextMenuItem::ContextMenuItem):
2787 (WebCore::ContextMenuItem::platformSubMenu):
2788 * platform/qt/ContextMenuQt.cpp:
2789 (WebCore::ContextMenu::ContextMenu):
2790 (WebCore::ContextMenu::~ContextMenu):
2791 (WebCore::ContextMenu::appendItem):
2792 (WebCore::ContextMenu::itemCount):
2794 2007-11-09 Peter Kasting <zerodpx@gmail.com>
2796 Reviewed by Mark Rowe.
2798 http://bugs.webkit.org/show_bug.cgi?id=15909
2799 Malformed GIFs should not result in memory corruption.
2801 * platform/image-decoders/gif/GIFImageDecoder.cpp:
2802 (WebCore::GIFImageDecoder::haveDecodedRow):
2804 2007-11-08 Timothy Hatcher <timothy@apple.com>
2806 Reviewed by Sam Weinig.
2808 Some Web Inspector CSS editing changes.
2809 - Only delete the property if all the text is delete or the new user input correctly parses.
2810 This prevents deleting the existing property if the new text is invalid.
2811 - Intercept the Escape key and cancel editing, not saving any changes.
2813 * page/inspector/StylesSidebarPane.js:
2815 2007-11-08 Kevin Ollivier <kevino@theolliviers.com>
2817 Bakefiles for building WebCore, needed by wx port.
2819 Reviewed by Mark Rowe.
2821 * WebCoreSources.bkl: Added.
2822 * webcore-base.bkl: Added.
2823 * webcore-wx.bkl: Added.
2825 2007-11-08 Justin Haygood <jhaygood@reaktix.com>
2827 Reviewed by Mark Rowe.
2829 http://bugs.webkit.org/show_bug.cgi?id=15905
2831 Fix builds with HTML 5 Storage support disabled.
2832 ENABLE(DATABASE) needs to be added in a few places.
2834 * page/InspectorController.cpp:
2835 * storage/Database.h:
2837 2007-11-08 Steve Falkenburg <sfalken@apple.com>
2839 <rdar://problem/5524082> Allow images to be dragged out directly into other apps
2841 We weren't including CF_HDROP in our image drops. This broke drag of
2842 images out of the browser window directly into other apps (examples
2843 include notepad, mspaint, msword).
2845 Reviewed by Oliver, Ada.
2847 * platform/win/ClipboardWin.cpp:
2848 (WebCore::createGlobalImageFileContent): Removed unused variable.
2849 (WebCore::createGlobalHDropContent): Added
2850 (WebCore::writeFileToDataObject): Write HDROP data if available.
2851 (WebCore::writeImageToDataObject): Write HDROP for dragged images.
2852 (WebCore::ClipboardWin::writeURL): Don't write HDROP for dragged URLs.
2854 2007-11-08 Xan Lopez <xan@gnome.org>
2858 http://bugs.webkit.org/show_bug.cgi?id=15908
2859 Use g_object_ref_sink when available
2861 * platform/gtk/PopupMenuGtk.cpp:
2862 (WebCore::PopupMenu::show):
2863 * platform/gtk/ScrollViewGtk.cpp:
2864 (WebCore::ScrollView::setGtkAdjustments):
2866 2007-11-08 Dan Bernstein <mitz@apple.com>
2868 Reviewed by Beth Dakin.
2870 - fix <rdar://problem/5491922> REGRESSION (Safari 2-3): Flash-based "Cash Optimizer" on etrade.com does not draw completely
2872 Test: fast/dom/length-attribute-mapping.html
2874 * dom/StyledElement.cpp:
2875 (WebCore::StyledElement::addCSSLength): Changed the garbage-stripping
2876 logic to stop after the first "%" or "*" in the string. This allows for
2877 "100%25" to be mapped to "100%" like it is in Firefox and WinIE.
2879 2007-11-08 Kevin McCullough <kmccullough@apple.com>
2883 * loader/FrameLoaderClient.h:
2884 * platform/graphics/svg/SVGImageEmptyClients.h:
2885 (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
2887 2007-11-08 Kevin McCullough <kmccullough@apple.com>
2891 - windowObjectCleared() is no longer const. It needs to setup the
2892 script debugger and cannot be const to do so.
2894 * loader/FrameLoaderClient.h:
2895 * platform/graphics/svg/SVGImageEmptyClients.h:
2896 (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
2898 2007-11-08 Adam Roben <aroben@apple.com>
2900 Hopeful Windows build fix
2902 * rendering/RenderObject.cpp: Touch this file to make it recompile.
2904 2007-11-08 Sam Weinig <sam@webkit.org>
2908 Convert JavaScript internal function objects to use one class per
2909 function. This avoids a switch statement inside what used to be
2910 the shared function classes and will allow Shark to better analyze
2913 To make this switch, the value property of the HashEntry was changed
2914 to a union of an intptr_t (which is used to continue handle valueGetters)
2915 and function pointer which points to a static constructor for the
2916 individual new function objects.
2918 SunSpider claims this is a 1.0% speedup.
2920 - On the WebCore side, I updated CodeGeneratorJS.pm to generate the
2921 new classes and hand updated the remain non-generated (groan) classes.
2923 * bindings/js/JSDOMWindowCustom.cpp:
2924 (WebCore::JSDOMWindow::customGetOwnPropertySlot):
2925 * bindings/js/JSEventTargetNode.cpp:
2926 (WebCore::JSEventTargetNodePrototypeFunctionAddEventListener::callAsFunction):
2927 (WebCore::JSEventTargetNodePrototypeFunctionRemoveEventListener::callAsFunction):
2928 (WebCore::JSEventTargetNodePrototypeFunctionDispatchEvent::callAsFunction):
2929 * bindings/js/JSEventTargetNode.h:
2930 * bindings/js/JSHTMLInputElementBase.cpp:
2931 (WebCore::JSHTMLInputElementBaseFunctionSetSelectionRange::callAsFunction):
2932 (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
2933 * bindings/js/JSHTMLInputElementBase.h:
2934 (WebCore::JSHTMLInputElementBase::):
2935 * bindings/js/JSXMLHttpRequest.cpp:
2936 (KJS::JSXMLHttpRequestPrototypeFunctionAbort::callAsFunction):
2937 (KJS::JSXMLHttpRequestPrototypeFunctionGetAllResponseHeaders::callAsFunction):
2938 (KJS::JSXMLHttpRequestPrototypeFunctionGetResponseHeader::callAsFunction):
2939 (KJS::JSXMLHttpRequestPrototypeFunctionOpen::callAsFunction):
2940 (KJS::JSXMLHttpRequestPrototypeFunctionSend::callAsFunction):
2941 (KJS::JSXMLHttpRequestPrototypeFunctionSetRequestHeader::callAsFunction):
2942 (KJS::JSXMLHttpRequestPrototypeFunctionOverrideMIMEType::callAsFunction):
2943 (KJS::JSXMLHttpRequestPrototypeFunctionAddEventListener::callAsFunction):
2944 (KJS::JSXMLHttpRequestPrototypeFunctionRemoveEventListener::callAsFunction):
2945 (KJS::JSXMLHttpRequestPrototypeFunctionDispatchEvent::callAsFunction):
2946 * bindings/js/JSXMLHttpRequest.h:
2947 (KJS::JSXMLHttpRequest::impl):
2948 * bindings/js/JSXSLTProcessor.cpp:
2949 (KJS::JSXSLTProcessorPrototypeFunctionImportStylesheet::callAsFunction):
2950 (KJS::JSXSLTProcessorPrototypeFunctionTransformToFragment::callAsFunction):
2951 (KJS::JSXSLTProcessorPrototypeFunctionTransformToDocument::callAsFunction):
2952 (KJS::JSXSLTProcessorPrototypeFunctionSetParameter::callAsFunction):
2953 (KJS::JSXSLTProcessorPrototypeFunctionGetParameter::callAsFunction):
2954 (KJS::JSXSLTProcessorPrototypeFunctionRemoveParameter::callAsFunction):
2955 (KJS::JSXSLTProcessorPrototypeFunctionClearParameters::callAsFunction):
2956 (KJS::JSXSLTProcessorPrototypeFunctionReset::callAsFunction):
2957 * bindings/js/JSXSLTProcessor.h:
2958 * bindings/js/kjs_events.cpp:
2959 (WebCore::JSClipboardPrototypeFunctionClearData::callAsFunction):
2960 (WebCore::JSClipboardPrototypeFunctionGetData::callAsFunction):
2961 (WebCore::JSClipboardPrototypeFunctionSetData::callAsFunction):
2962 (WebCore::JSClipboardPrototypeFunctionSetDragImage::callAsFunction):
2963 * bindings/js/kjs_events.h:
2964 * bindings/js/kjs_navigator.cpp:
2966 (KJS::Navigator::getOwnPropertySlot):
2967 (KJS::Plugins::getOwnPropertySlot):
2968 (KJS::PluginsFunctionRefresh::callAsFunction):
2969 (KJS::NavigatorProtoFuncJavaEnabled::callAsFunction):
2970 * bindings/js/kjs_navigator.h:
2972 * bindings/js/kjs_window.cpp:
2973 (KJS::Window::getOwnPropertySlot):
2975 (KJS::WindowProtoFuncAToB::callAsFunction):
2976 (KJS::WindowProtoFuncBToA::callAsFunction):
2977 (KJS::WindowProtoFuncOpen::callAsFunction):
2978 (KJS::WindowProtoFuncScrollBy::callAsFunction):
2979 (KJS::WindowProtoFuncScrollTo::callAsFunction):
2980 (KJS::WindowProtoFuncMoveBy::callAsFunction):
2981 (KJS::WindowProtoFuncMoveTo::callAsFunction):
2982 (KJS::WindowProtoFuncResizeBy::callAsFunction):
2983 (KJS::WindowProtoFuncResizeTo::callAsFunction):
2984 (KJS::WindowProtoFuncSetTimeout::callAsFunction):
2985 (KJS::WindowProtoFuncClearTimeout::callAsFunction):
2986 (KJS::WindowProtoFuncSetInterval::callAsFunction):
2987 (KJS::WindowProtoFuncAddEventListener::callAsFunction):
2988 (KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
2989 (KJS::WindowProtoFuncShowModalDialog::callAsFunction):
2990 (KJS::WindowProtoFuncNotImplemented::callAsFunction):
2991 (KJS::Location::getOwnPropertySlot):
2992 (KJS::Location::put):
2993 (KJS::LocationProtoFuncReplace::callAsFunction):
2994 (KJS::LocationProtoFuncReload::callAsFunction):
2995 (KJS::LocationProtoFuncAssign::callAsFunction):
2996 (KJS::LocationProtoFuncToString::callAsFunction):
2997 * bindings/js/kjs_window.h:
2999 * bindings/scripts/CodeGeneratorJS.pm:
3001 2007-11-08 Mark Rowe <mrowe@apple.com>
3003 Fix the Gtk, Qt and Wx builds.
3005 * platform/gtk/TemporaryLinkStubs.cpp:
3006 * platform/qt/TemporaryLinkStubs.cpp:
3007 * platform/wx/TemporaryLinkStubs.cpp:
3009 2007-11-08 Mark Rowe <mrowe@apple.com>
3011 Not reviewed. Fix two instances of includes using the wrong case in the filename.
3013 * platform/graphics/mac/MoviePrivateQTKit.mm:
3014 * platform/wx/MimeTypeRegistryWx.cpp:
3016 2007-11-08 Darin Adler <darin@apple.com>
3020 - fix <rdar://problem/5552943> accesskey does not focus <button> elements
3022 Test: fast/forms/access-key.html
3024 * html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::accessKeyAction):
3025 Added a call to focus.
3027 2007-11-07 Darin Adler <darin@apple.com>
3031 - cut down on notImplemented() functions on Windows
3033 * bridge/AXObjectCache.h: Put #if around the accessibility
3036 * bridge/win/FrameWin.cpp: (WebCore::Frame::setNeedsReapplyStyles):
3037 Moved here from TemporaryLinkStubs.
3039 * dom/Document.cpp: (WebCore::Document::lastModified): Re-implemented
3040 using the ResourceResponse that's now available from the DocumentLoader.
3042 * editing/JSEditor.cpp: (execTranspose): Changed to call transpose() on
3043 the Editor instead of the obsolete one on the Frame.
3045 * loader/DocumentLoader.h: Removed getResponseModifiedHeader.
3046 * loader/FrameLoader.h: Removed overrideMediaType.
3048 * loader/gtk/DocumentLoaderGtk.cpp: Removed.
3049 * loader/mac/DocumentLoaderMac.mm: Removed.
3050 * loader/qt/DocumentLoaderQt.cpp: Removed.
3052 * page/Frame.cpp: Removed transpose.
3053 * page/Frame.h: Ditto.
3054 * page/FrameView.h: Removed updateBorder.
3055 * page/gtk/FrameGtk.cpp: Removed issueTransposeCommand.
3056 * page/mac/FrameMac.mm: Ditto.
3057 * page/mac/WebCoreFrameBridge.h: Removed issueTransposeCommand and
3059 * page/qt/FrameQt.cpp: Removed issueTransposeCommand.
3061 * platform/gtk/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled.
3062 * platform/qt/TemporaryLinkStubs.cpp: Ditto.
3063 * platform/win/TemporaryLinkStubs.cpp: Removed or moved all but 3 of the stubs.
3064 * platform/wx/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled,
3065 issueTransposeCommand, and overrideMediaType.
3067 * platform/network/cf/ResourceHandleCFNet.cpp:
3068 (WebCore::ResourceHandle::loadsBlocked): Moved here from TemporaryLinkStubs.
3069 (WebCore::ResourceHandle::willLoadFromCache): Ditto.
3070 * platform/win/GraphicsContextWin.cpp:
3071 (WebCore::GraphicsContextPlatformPrivate::clip): Ditto.
3072 * platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::inWindow): Ditto.
3073 * platform/win/SystemTimeWin.cpp: (WebCore::userIdleTime): Ditto.
3074 * platform/win/WidgetWin.cpp: (WebCore::Widget::setIsSelected): Ditto.
3076 * WebCore.pro: Updated for removed files.
3077 * WebCore.xcodeproj/project.pbxproj: Updated for removed file.
3079 2007-11-08 Mark Rowe <mrowe@apple.com>
3081 Build fix for case-sensitive file systems. Fix case of file names
3084 * html/HTMLMediaElement.cpp:
3085 * platform/graphics/Movie.cpp:
3087 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
3089 Reviewed by Lars Knoll <lars@trolltech.com>.
3091 Remove some warnings about not implemented methods.
3093 * ResourceHandle::loadsBlocked and ResourceHandle::supportsBufferedData are
3094 specific to the NS API and won't be implemented on Qt.
3095 * ResourceHandle::bufferedData can not be reached as we return false in
3096 ResourceHandle::supportsBufferedData.
3099 * platform/network/qt/ResourceHandleQt.cpp:
3100 (WebCore::ResourceHandle::supportsBufferedData):
3102 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
3104 Reviewed by Lars Knoll <lars@trolltech.com>.
3106 Cleanup checking for the request method.
3108 * Check the request method only in QWebNetworkManager::add.
3109 * Currently HEAD, GET, POST are allowed and for everything else
3110 QWebNetworkManager::add returns false.
3111 * Returning false is compatible with ResourceHandle::start and it
3112 can be used in ResourceHandle::loadResourceSynchronously to generate
3116 * platform/network/qt/ResourceHandleQt.cpp:
3117 (WebCore::ResourceHandle::start):
3118 (WebCore::ResourceHandle::loadResourceSynchronously):
3120 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
3122 Reviewed by Lars Knoll <lars@trolltech.com>.
3124 Implement WebCore::callOnMainThread
3126 Implemented using a global QObject, that is moved to the main thread
3127 and then sending a custom event to it.
3128 Picked a number below QEvent::User but above any other documented value.
3131 * platform/qt/ThreadingQt.cpp:
3132 (WebCore::PerformFunctionEvent::PerformFunctionEvent):
3133 (WebCore::MainThreadInvoker::MainThreadInvoker):
3134 (WebCore::MainThreadInvoker::event):
3135 (WebCore::callOnMainThread):
3137 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
3139 Reviewed by Lars Knoll <lars@trolltech.com>.
3141 Avoid problems with calling QPainter::begin() on an already active paintdevice
3143 * Partial pick from 6200e04c3e0a77873c3b3f3969b65bc701020326 to avoid getting
3144 crashes on Qt/Mac 4.4 with QPainter::begin to fail because we already draw.
3145 * If we are in a layout or need one do not paint. This can happen for the PlatformScrollBar
3146 used by the ScrollView on a layout triggered by QWebPage::paintEvent.
3149 * platform/qt/WidgetQt.cpp:
3150 (WebCore::Widget::invalidateRect):
3152 2007-11-08 Eric Seidel <eric@webkit.org>
3156 * ksvg2/svg/SVGPathElement.h: remove old comment
3158 2007-11-07 Antti Koivisto <antti@apple.com>
3162 Ensure video renderer has correct size if video has already been loaded
3163 when it is constructed.
3165 * rendering/RenderVideo.cpp:
3166 (WebCore::RenderVideo::RenderVideo):
3168 2007-11-07 Antti Koivisto <antti@apple.com>
3172 Ensure video is visible when it should be.
3174 * rendering/RenderVideo.cpp:
3175 (WebCore::RenderVideo::updateMovie):
3177 2007-11-07 Dan Bernstein <mitz@apple.com>
3179 Reviewed by Darin Adler.
3181 - fix <rdar://problem/5523503> Safari crashes clicking scroll bar in FaceBook 'Trips'
3183 Layers and listboxes are two kinds of ScrollBarClient that can be
3184 removed while the scrollbar is tracking the mouse. The scrollbar is not
3185 destroyed until later, and meanwhile it can try to call the client,
3186 which results in a crash.
3188 * manual-tests/stale-scrollbar-client-crash.html: Added.
3189 * platform/ScrollBar.h:
3190 (WebCore::Scrollbar::setClient): Added.
3191 * rendering/RenderLayer.cpp:
3192 (WebCore::RenderLayer::destroyScrollbar): Call Scrollbar::setClient().
3193 * rendering/RenderListBox.cpp:
3194 (WebCore::RenderListBox::~RenderListBox): Ditto.
3196 2007-11-07 Adam Roben <aroben@apple.com>
3198 Fix <rdar://5569268> Crash when opening any FTP site in second tab/window
3204 * platform/win/SharedBufferWin.cpp:
3205 (WebCore::SharedBuffer::createWithContentsOfFile): Bail if we get an
3206 empty path, because _wfopen_s will crash if we pass it a null pointer.
3208 2007-11-07 David Kilzer <ddkilzer@apple.com>
3210 WebKit confuses width/height for Media Queries device-aspect-ratio evaluation
3211 <http://bugs.webkit.org/show_bug.cgi?id=14893>
3212 <rdar://problem/5380295>
3216 Tests: fast/css/device-aspect-ratio.html
3217 fast/css/max-device-aspect-ratio.html
3218 fast/css/min-device-aspect-ratio.html
3220 * css/MediaQueryEvaluator.cpp:
3221 (WebCore::parseAspectRatio): Renamed method parameters from a/b to h/v.
3222 (WebCore::device_aspect_ratioMediaFeatureEval): Renamed local variables from
3223 a/b to h/v. Switched first two arguments of the call to cmpvalue() to fix
3226 2007-11-07 Dan Bernstein <mitz@apple.com>
3228 Reviewed by Dave Hyatt.
3230 - fix http://bugs.webkit.org/show_bug.cgi?id=15887
3231 REGRESSION (r27576): Crash in RenderStyle::affectedByHoverRules clicking link on Digg
3233 Test: fast/css/display-none-inline-style-change-crash.html
3236 (WebCore::Element::recalcStyle): Fixed the crash by null-checking
3237 the current style and removed other checks that are not strictly
3240 2007-11-07 Brady Eidson <beidson@apple.com>
3242 Rubberstamped by Sam
3244 Remove FrameLoaderClient methods from SVG that were pruned awhile ago
3246 * platform/graphics/svg/SVGImageEmptyClients.h:
3248 2007-11-07 Dan Bernstein <mitz@apple.com>
3250 Reviewed by Darin Adler.
3252 - fix a bug where CSS rules with :hover in the ancestor chain stopped
3253 working after changing the inline style declaration of the ancestor
3255 Test: fast/css/affected-by-hover-after-style-change.html
3258 (WebCore::Element::recalcStyle): If we are not forcing style
3259 recalculation for all descendants, preserve any "affected by
3260 {hover|active|drag} bits that we may have acquired from them.
3261 Also renamed _style to currentStyle.
3263 2007-11-06 Timothy Hatcher <timothy@apple.com>
3267 Bug 11920: Web Inspector should have Firebug-like CSS editing
3268 http://bugs.webkit.org/show_bug.cgi?id=11920
3270 * css/CSSComputedStyleDeclaration.h:
3271 (WebCore::CSSComputedStyleDeclaration::isPropertyImplicit): Return false. I'm not sure why
3272 this was true, but computed style has no concept of implicit. So false makes more sense
3273 and makes the code simpler in the inspector. This function was added for the inspector,
3274 so this isn't a compatibility change.
3275 * page/inspector/PropertiesSection.js: Add a getter/setter to reset populated status.
3276 * page/inspector/StylesSidebarPane.js: Some refactoring along with the main support for
3278 * page/inspector/inspector.css: Style changes for propery editing and focus correctness.
3279 * page/inspector/inspector.js: Look for a handleKeyEvent function of the focus element before
3280 trying to call a function based on the element's id. Call focused and blurred on the focused
3281 element when currentFocusElement is changed. Use the new listItemElement getter instead of
3282 the private property.
3283 * page/inspector/treeoutline.js: No longer expand on double click if ondblclick is implemented.
3284 Shrink the toggle zone to 10px to better match the size of the arrow. Add an onattach call
3285 to allow generation of the title using the DOM element. Add listItemElement and
3286 childrenListElement getters.
3287 * page/inspector/utilities.js: Add new helper prototype methods on CSSStyleDeclaration.
3288 * page/inspector/DocumentPanel.js: Use the new listItemElement getter instead of the private
3289 property. Also expand the DOM node on double click now that the TreeOutline dosen't do it.
3290 * page/inspector/Resource.js: Use the new listItemElement and childrenListElement getters
3291 instead of the private properties.
3293 2007-11-07 Simon Hausmann <hausmann@kde.org>
3295 Reviewed by Alexey Proskuryakov.
3297 Coding style fix, don't use inline explicitly.
3299 * bridge/WindowFeatures.h:
3301 2007-11-07 Simon Hausmann <hausmann@kde.org>
3305 For safety provide a default constructor for WindowFeatures().
3306 ContextMenuController.cpp: createNewWindow as well as QWebPage need to
3307 create a default initialized WindowFeatures object on the fly.
3309 * bridge/WindowFeatures.h:
3310 (WebCore::WindowFeatures::WindowFeatures):
3312 2007-11-07 Simon Hausmann <shausman@trolltech.com>
3316 Fix "nmake clean" for the Qt/Windows build by replacing tmp/ with a variable that ends with the correct type of slash/backslash depending on the choice of compiler/make tool.
3320 2007-11-07 Simon Hausmann <hausmann@kde.org>
3324 Made the QWebSettings::webGraphic functions static. The implementation was using QWebSettings::global() anyway.
3326 * platform/graphics/qt/ImageQt.cpp:
3327 (loadResourcePixmap):
3329 2007-11-07 Simon Hausmann <hausmann@kde.org>
3333 Moved the WebCore::Image specific function loadResourcePixmap from qwebsettings.cpp to ImageQt.cpp and made it static.
3335 * platform/graphics/qt/ImageQt.cpp:
3336 (loadResourcePixmap):
3338 2007-11-07 Simon Hausmann <hausmann@kde.org>
3342 Restructure the context menu classes for the Qt port. ContextMenu and ContextMenuItem don't store
3343 QActions/QMenus anymore but just store the action type, tag, title and optionally submenu as created
3344 in ContextMenu::populate().
3345 For the actual Qt context menu we traverse this structure after sendContextMenuEvent and create a QMenu
3346 out of it. That menu is currently not functional anymore though.
3348 * platform/ContextMenu.h:
3349 * platform/ContextMenuItem.h:
3350 (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription):
3351 * platform/PlatformMenuDescription.h:
3352 * platform/qt/ContextMenuItemQt.cpp:
3353 (WebCore::ContextMenuItem::ContextMenuItem):
3354 (WebCore::ContextMenuItem::type):
3355 (WebCore::ContextMenuItem::setType):
3356 (WebCore::ContextMenuItem::action):
3357 (WebCore::ContextMenuItem::setAction):
3358 (WebCore::ContextMenuItem::title):
3359 (WebCore::ContextMenuItem::setTitle):
3360 (WebCore::ContextMenuItem::platformSubMenu):
3361 (WebCore::ContextMenuItem::setSubMenu):
3362 (WebCore::ContextMenuItem::setChecked):
3363 (WebCore::ContextMenuItem::setEnabled):
3364 * platform/qt/ContextMenuQt.cpp:
3365 (WebCore::ContextMenu::ContextMenu):
3366 (WebCore::ContextMenu::~ContextMenu):
3367 (WebCore::ContextMenu::appendItem):
3368 (WebCore::ContextMenu::itemCount):
3369 (WebCore::ContextMenu::insertItem):
3370 (WebCore::ContextMenu::setPlatformDescription):
3371 (WebCore::ContextMenu::platformDescription):
3373 2007-11-07 Simon Hausmann <hausmann@kde.org>
3377 Changed ContextMenu::setPlatformDescription for the Qt port to not show the qmenu right away
3378 but instead just behave as a normal setter that takes ownership of the platform menu description (the qmenu).
3379 Instead now QWebPage::contextMenuEvent() retrieves the QMenu after calling sendContextMenuEvent and calls exec()
3382 * platform/qt/ContextMenuQt.cpp:
3384 2007-11-07 Simon Hausmann <hausmann@kde.org>
3388 Changed to PlatformMouseEvent constructor to allow construction from a QContextMenuEvent.
3389 Call sendContextMenuEvent on the event handler from a QWidget::contextMenuEvent re-implementation instead of in mousePressEvent.
3391 * platform/PlatformMouseEvent.h:
3392 * platform/qt/PlatformMouseEventQt.cpp:
3393 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3395 2007-11-07 Lars Knoll <lars@trolltech.com>
3399 don't put nbsp's into the plan text paste
3401 Fix both ClipboardQt and PasteboardQt to replace
3402 nbsp's with spaces before putting the text onto the
3403 native clipboard. This is consistent with Mac and Win
3404 and fixes at least editing/pasteboard/4076267-3.html
3406 * platform/qt/ClipboardQt.cpp:
3407 (WebCore::ClipboardQt::writeRange):
3408 * platform/qt/PasteboardQt.cpp:
3409 (WebCore::Pasteboard::writeSelection):
3411 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
3413 Reviewed by Lars Knoll <lars@trolltech.com>.
3415 Implement Pasteboard::writeImage()
3417 * Pasteboard is now fully implemented. Copying of Images into the Clipboard
3419 * As with URLs we only copy into the Clipboard (and not additionally to the
3422 * platform/qt/PasteboardQt.cpp:
3423 (WebCore::Pasteboard::writeImage):
3425 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
3427 Reviewed by Lars Knoll <lars@trolltech.com>.
3429 Apple CodingStyle fixes
3431 * platform/qt/PasteboardQt.cpp:
3432 (WebCore::Pasteboard::documentFragment):
3434 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
3436 Reviewed by Lars Knoll <lars@trolltech.com>.
3438 Implement Pasteboard::writeURL()
3439 * The URL currently gets written as text/plain and text/uri-list.
3440 The win and mac port have some more types which we currently do
3441 not support. When supporting them we can use the 'titleString'
3443 * As with writeSelection we only copy into the Clipboard. We could
3444 consider copying into the Selection as well.
3446 * platform/qt/PasteboardQt.cpp:
3447 (WebCore::Pasteboard::writeURL):
3449 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
3451 Reviewed by Lars Knoll <lars@trolltech.com>.
3455 * platform/qt/PasteboardQt.cpp:
3456 (WebCore::Pasteboard::documentFragment):
3458 2007-11-07 Lars Knoll <lars@trolltech.com>
3462 Use the correct function calls to convert a selection to
3465 * platform/qt/ClipboardQt.cpp:
3466 (WebCore::ClipboardQt::setData):
3467 (WebCore::ClipboardQt::writeRange):
3468 * platform/qt/PasteboardQt.cpp:
3469 (WebCore::Pasteboard::writeSelection):
3471 2007-11-07 Lars Knoll <lars@trolltech.com>
3475 Some more clipboard fixes.
3477 We have to set things immediately on the QClipBoard if the
3478 Clipboard object is not for dragging.
3480 This is due to the fact that the Clipboard object might be
3481 rather long lived if accessed through javascript (it'll only
3482 get deleted by JS garbage collection). We have to transfer
3483 the data over to the QClipboard before that to make things work.
3485 Fixes editing/execCommand/copy-without-selection.html
3487 * platform/qt/ClipboardQt.cpp:
3488 (WebCore::ClipboardQt::ClipboardQt):
3489 (WebCore::ClipboardQt::~ClipboardQt):
3490 (WebCore::ClipboardQt::clearData):
3491 (WebCore::ClipboardQt::clearAllData):
3492 (WebCore::ClipboardQt::getData):
3493 (WebCore::ClipboardQt::setData):
3494 (WebCore::ClipboardQt::declareAndWriteDragImage):
3495 (WebCore::ClipboardQt::writeURL):
3496 (WebCore::ClipboardQt::writeRange):
3498 2007-11-07 Simon Hausmann <hausmann@kde.org>
3502 Fix compilation on Windows with non-cygwin perl. open FILE, "|-" is
3503 not supported due to implicit forks, use IPC::Open2 instead.
3505 * bindings/scripts/IDLParser.pm:
3507 2007-11-07 Dan Bernstein <mitz@apple.com>
3509 Reviewed by Brady Eidson.
3511 - fix http://bugs.webkit.org/show_bug.cgi?id=15877
3512 REGRESSION: r27486 caused a layout regression at my bank's website
3514 Test: fast/block/float/overhanging-after-height-decrease-offsets.html
3516 * rendering/RenderBlock.cpp:
3517 (WebCore::RenderBlock::layoutBlock):
3519 2007-11-06 Beth Dakin <bdakin@apple.com>
3523 <rdar://problem/5575812> REGRESSION:When using absolute positioning
3524 with overflow:auto div, WebKit seems to add an additional 15px
3526 * rendering/RenderBox.cpp:
3527 (WebCore::RenderBox::containingBlockWidthForPositioned): We need to
3528 subtract off the vertical scrollbar width too.
3530 2007-11-06 Justin Garcia <justin.garcia@apple.com>
3532 Reviewed by Dan Bernstein.
3534 <rdar://problem/5583387> ASSERTION FAILED: !refChild->hasTagName(bodyTag) when pasting newline in plain text into rich text Mail
3535 <rdar://problem/5583362> REGRESSION (5523.10.3-TOT): Newlines stripped when pasting plain text in Mail
3537 * editing/markup.cpp:
3538 (WebCore::createFragmentFromText): Put paragraphs of text into clones of the block
3539 that encloses the input context, unless that block is the body, which shouldn't
3540 be cloned. In that case, use regular divs, as we did before r27369.
3542 2007-11-06 Christian Dywan <christian@twotoasts.de>
3546 Fix http://bugs.webkit.org/show_bug.cgi?id=15828
3547 Bug 15828: WebKit GTK include and lib directory is installed in qt4-named directory
3549 * WebCore.pro: Use sane default install paths for the gtk port.
3551 2007-11-06 Justin Garcia <justin.garcia@apple.com>
3553 Reviewed by Darin Adler.
3555 <rdar://problem/5576619>
3556 REGRESSION: Caret disappears after deleting the last character in inline hole (15714)
3558 * editing/TypingCommand.cpp:
3559 (WebCore::TypingCommand::deleteSelection): Like the other TypingCommands, including
3560 both of the other deletion commands, call typingAddedToOpenCommand(), which takes
3561 the command's endingSelection and sets it as selection.
3563 2007-11-06 Dan Bernstein <mitz@apple.com>
3565 Reviewed by Antti Koivisto and Dave Hyatt.
3567 - fix <rdar://problem/5582961> Incorrect layout and floating object list corruption when CSS decreases a block's height
3569 Test: fast/block/float/overhanging-after-height-decrease.html
3571 * rendering/RenderBlock.cpp:
3572 (WebCore::RenderBlock::layoutBlock): If after calculating the height
3573 it turns out that there are overhanging floats that were not overhanging
3574 before, rescan children with overhanging floats and add them.
3575 (WebCore::RenderBlock::layoutBlockChildren): Added a parameter that
3576 returns the lowest float bottom of any of the children.
3577 (WebCore::RenderBlock::addOverhangingFloats): Changed to return the
3578 lowest float bottom.
3579 * rendering/RenderBlock.h:
3581 2007-11-06 Adele Peterson <adele@apple.com>
3585 Switched all uses of HTMLImageLoader to use OwnPtrs.
3587 * html/HTMLInputElement.h:
3588 * html/HTMLInputElement.cpp:
3589 (WebCore::HTMLInputElement::init):
3590 (WebCore::HTMLInputElement::~HTMLInputElement):
3591 (WebCore::HTMLInputElement::setInputType):
3592 (WebCore::HTMLInputElement::parseMappedAttribute):
3593 (WebCore::HTMLInputElement::attach):
3594 * html/HTMLObjectElement.h:
3595 * html/HTMLObjectElement.cpp:
3596 (WebCore::HTMLObjectElement::HTMLObjectElement):
3597 (WebCore::HTMLObjectElement::~HTMLObjectElement):
3598 (WebCore::HTMLObjectElement::parseMappedAttribute):
3599 (WebCore::HTMLObjectElement::attach):
3600 * html/HTMLVideoElement.h:
3601 * html/HTMLVideoElement.cpp:
3602 (WebCore::HTMLVideoElement::HTMLVideoElement):
3603 (WebCore::HTMLVideoElement::attach):
3604 (WebCore::HTMLVideoElement::detach):
3605 (WebCore::HTMLVideoElement::parseMappedAttribute):
3607 2007-11-06 Antti Koivisto <antti@apple.com>
3611 Trigger media load on on src attribute changes as specified in new HTML5 draft.
3613 Tests: media/video-src-change.html
3614 media/video-src-remove.html
3615 media/video-src-set.html
3617 * html/HTMLMediaElement.cpp:
3618 (WebCore::HTMLMediaElement::attributeChanged):
3619 * html/HTMLMediaElement.h:
3621 2007-11-06 Dan Bernstein <mitz@apple.com>
3623 Reviewed by Darin Adler.
3625 - fix http://bugs.webkit.org/show_bug.cgi?id=15838
3626 Incomplete repaint toggling "How you know this person" on Facebook
3628 Test: fast/repaint/make-children-non-inline.html
3630 * rendering/RenderBlock.cpp:
3631 (WebCore::RenderBlock::makeChildrenNonInline): Repaint the block. This
3632 is needed because the inline children may be repositioned as they move
3633 into new anonymous blocks, but those blocks have no knowledge of where
3634 their children used to be, so they cannot invalidate those areas.
3636 2007-11-06 Alexey Proskuryakov <ap@webkit.org>
3640 http://bugs.webkit.org/show_bug.cgi?id=15847
3641 Some editing cleanup
3643 No change in functionality.
3645 * editing/TextIterator.cpp:
3646 (WebCore::plainText):
3647 * editing/TextIterator.h:
3648 Made WebCore::plainText() return String instead of DeprecatedString.
3650 * bridge/mac/WebCoreAXObject.mm:
3651 (-[WebCoreAXObject textUnderElement]):
3652 (-[WebCoreAXObject value]):
3653 (-[WebCoreAXObject doAXBoundsForTextMarkerRange:]):
3654 (-[WebCoreAXObject doAXNextSentenceEndTextMarkerForTextMarker:]):
3655 (-[WebCoreAXObject doAXPreviousSentenceStartTextMarkerForTextMarker:]):
3656 Updated for the above change. There is no need to explicitly convert to NSString now.
3658 * editing/EditCommand.cpp:
3659 (WebCore::EditCommand::EditCommand): m_startingSelection and m_endingSelection are actually
3660 initialized in constructor body, so the work done in initializer list was wasted.
3662 (WebCore::EditCommand::apply): Moved some stars.
3663 (WebCore::EditCommand::unapply): Ditto.
3664 (WebCore::EditCommand::reapply): Ditto.
3665 (WebCore::EditCommand::setStartingSelection): The loop exit condition was evaluated twice,
3666 removed one of the checks.
3668 * editing/SelectionController.cpp:
3669 (WebCore::SelectionController::toString): plainText() result type now matches what we need here.
3671 * page/mac/WebCoreFrameBridge.h:
3672 * page/mac/WebCoreFrameBridge.mm:
3673 Removed unused -[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:] and
3674 -[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:].
3676 2007-11-05 Mark Rowe <mrowe@apple.com>
3680 * bindings/js/JSHTMLDocumentCustom.cpp:
3681 (WebCore::writeHelper):
3683 2007-11-05 Adam Roben <aroben@apple.com>
3685 Don't crash if SafariTheme can't be loaded
3687 PlatformScrollBarSafari and RenderThemeSafari were not checking
3688 whether SafariTheme was successfully loaded. All other uses of
3689 SafariTheme already check this.
3693 * platform/win/PlatformScrollBarSafari.cpp: Don't paint if SafariTheme
3695 (WebCore::PlatformScrollbar::paintButton):
3696 (WebCore::PlatformScrollbar::paintTrack):
3697 (WebCore::PlatformScrollbar::paintThumb):
3698 * rendering/RenderThemeSafari.cpp:
3699 (WebCore::RenderThemeSafari::isControlStyled): Always return true if
3700 we couldn't load SafariTheme. This way we should never try to paint
3701 themed controls (and we assert as such in the paint functions).
3702 (WebCore::RenderThemeSafari::paintCheckbox):
3703 (WebCore::RenderThemeSafari::paintRadio):
3704 (WebCore::RenderThemeSafari::paintButton):
3705 (WebCore::RenderThemeSafari::paintTextField):
3706 (WebCore::RenderThemeSafari::paintCapsLockIndicator):
3707 (WebCore::RenderThemeSafari::paintTextArea):
3708 (WebCore::RenderThemeSafari::paintMenuList):
3709 (WebCore::RenderThemeSafari::paintSliderThumb):
3710 (WebCore::RenderThemeSafari::paintSearchField):
3711 (WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
3712 (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration):
3713 (WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
3715 2007-11-05 Kevin Ollivier <kevino@theolliviers.com>
3717 Adding the rest of wx port's graphics impl.
3719 Rubber-stamped by Maciej Stachowiak.
3721 * platform/graphics/wx/AffineTransformWx.cpp: Added.
3722 * platform/graphics/wx/GraphicsContextWx.cpp: Added.
3723 * platform/graphics/wx/ImageBufferWx.cpp: Added.
3724 * platform/graphics/wx/ImageSourceWx.cpp: Added.
3725 * platform/graphics/wx/ImageWx.cpp: Added.
3726 * platform/graphics/wx/PathWx.cpp: Added.
3728 2007-11-05 Kevin Ollivier <kevino@theolliviers.com>
3730 wx port bug fixes and new files to get platform/wx building on trunk.
3732 Rubber-stamped by Maciej Stachowiak.
3734 * platform/wx/CursorWx.cpp:
3735 * platform/wx/FileSystemWx.cpp: Added.
3736 * platform/wx/FontCacheWx.cpp:
3737 * platform/wx/FontPlatformDataWx.cpp:
3738 * platform/wx/FontWx.cpp:
3739 * platform/wx/KeyboardEventWx.cpp:
3740 * platform/wx/LocalizedStringsWx.cpp: Added.
3741 * platform/wx/LoggingWx.cpp: Added.
3742 * platform/wx/RenderThemeWx.cpp:
3743 * platform/wx/ScrollViewWx.cpp:
3744 * platform/wx/SharedTimerWx.cpp:
3745 * platform/wx/StringWx.cpp:
3746 * platform/wx/ThreadingWx.cpp: Added.
3747 * platform/wx/WidgetWx.cpp:
3749 2007-11-05 Adele Peterson <adele@apple.com>
3753 Fix for <rdar://problem/5579999> Add poster attribute for video element
3755 * html/HTMLAttributeNames.in: Added poster attribute.
3757 * html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::updateFromElement):
3758 Calls imageSourceAttributeName instead of having special cases for the different kinds of elements.
3759 * dom/Element.cpp: (WebCore::Element::imageSourceAttributeName): Added.
3761 * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::imageSourceAttributeName): Added.
3762 * html/HTMLObjectElement.h:
3764 * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::movieNetworkStateChanged):
3765 Calls updatePosterImage when the network state is empty and when the first frame has been loaded.
3766 * html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::rendererIsNeeded): Made this inline. HTMLVideoElement now also implements this.
3768 * html/HTMLVideoElement.idl: Added case for poster attribute.
3769 * html/HTMLVideoElement.h: Added image loader and flag to keep track of whether or not the poster image should be shown.
3770 * html/HTMLVideoElement.cpp:
3771 (WebCore::HTMLVideoElement::HTMLVideoElement): Initialize m_imageLoader and m_shouldShowPosterImage.
3772 (WebCore::HTMLVideoElement::rendererIsNeeded): Calls HTMLElement::rendererIsNeeded since HTMLMediaElements have renderer by default.
3773 (WebCore::HTMLVideoElement::createRenderer): Create a RenderImage or RenderVideo depending on whether or not the poster image should be shown.
3774 (WebCore::HTMLVideoElement::attach): Set up image loader and RenderImage if necessary.
3775 (WebCore::HTMLVideoElement::detach): Delete image loader if its no longer needed.
3776 (WebCore::HTMLVideoElement::parseMappedAttribute): Added case to process poster attribute.
3777 (WebCore::HTMLVideoElement::poster): Added getter for poster attribute.
3778 (WebCore::HTMLVideoElement::setPoster): Added setter for poster attribute.
3779 (WebCore::HTMLVideoElement::isURLAttribute): Added.
3780 (WebCore::HTMLVideoElement::imageSourceAttributeName): Added.
3781 (WebCore::HTMLVideoElement::updatePosterImage): Added. Updates m_shouldShowPosterImage and if its changed, detaches and attaches so the renderer is correct.
3783 2007-11-05 Adam Roben <aroben@apple.com>
3785 Fix <rdar://5563572> SVG image support is turned off
3787 Turned on SVG images for all platforms.
3791 * WebCore.vcproj/WebCore.vcproj: Added SVGImage.{cpp,h}
3792 * loader/CachedImage.cpp:
3793 (WebCore::CachedImage::createImage): Removed platform checks for
3796 2007-11-05 Antti Koivisto <antti@apple.com>
3800 QTMovieView can generate callbacks during paint. This can lead to crashes.
3802 Delay callbacks so they get handled after painting is completed. No test case,
3803 I don't know how to reliably reproduce this.
3805 * platform/graphics/mac/MoviePrivateQTKit.mm:
3806 (WebCore::MoviePrivate::MoviePrivate):
3807 (WebCore::MoviePrivate::~MoviePrivate):
3808 (WebCore::MoviePrivate::paint):
3809 (-[WebCoreMovieObserver initWithCallback:WebCore::]):
3810 (-[WebCoreMovieObserver disconnect]):
3811 (-[WebCoreMovieObserver loadStateChanged:]):
3812 (-[WebCoreMovieObserver rateChanged:]):
3813 (-[WebCoreMovieObserver sizeChanged:]):
3814 (-[WebCoreMovieObserver timeChanged:]):
3815 (-[WebCoreMovieObserver volumeChanged:]):
3816 (-[WebCoreMovieObserver didEnd:]):
3817 (-[WebCoreMovieObserver setDelayCallbacks:]):
3819 2007-11-05 Antti Koivisto <antti@apple.com>
3823 Add some missing WebCore* prefixes to ObjC classes
3825 * platform/mac/FileChooserMac.mm:
3826 (WebCore::FileChooser::FileChooser):
3827 * platform/mac/SharedBufferMac.mm:
3828 (WebCore::SharedBuffer::createNSData):
3829 (WebCore::SharedBuffer::createCFData):
3830 * platform/mac/SharedTimerMac.cpp:
3831 (WebCore::setSharedTimerFireTime):
3833 2007-11-05 Ada Chan <adachan@apple.com>
3835 <rdar://problem/5579772> Regression: AltGr does not work
3836 We now store the system key event info in PlatforkKeyboardEvent().
3840 * platform/PlatformKeyboardEvent.h:
3841 (WebCore::PlatformKeyboardEvent::isSystemKey):
3842 * platform/win/KeyEventWin.cpp:
3843 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
3845 2007-11-02 Tristan O'Tierney <tristan@apple.com>
3847 Reviewed by Darin Adler.
3849 * WebCore.xcodeproj/project.pbxproj:
3850 Set WindowFeatures.h as a Private header.
3852 * loader/FrameLoader.cpp:
3853 (WebCore::FrameLoader::createWindow):
3854 Revised to use a single createWindow function instead of
3855 two createWindow functions and one createModalDialog function.
3856 The logic for this is now addressed in WebKit in an effort
3857 to make this easier to follow.
3860 (WebCore::Chrome::createWindow):
3862 * page/ChromeClient.h:
3863 * page/ContextMenuController.cpp:
3864 (WebCore::openNewWindow):
3865 * platform/graphics/svg/SVGImageEmptyClients.h:
3866 (WebCore::SVGEmptyChromeClient::createWindow):
3867 Revised to take new additional windowFeatures parameter.
3869 2007-11-04 Geoffrey Garen <ggaren@apple.com>
3871 Reviewed by Darin Adler.
3873 http://bugs.webkit.org/show_bug.cgi?id=15835
3875 Small adaptations to new KJS::List class.
3877 * bindings/js/kjs_window.cpp:
3878 (KJS::WindowFunc::callAsFunction):
3879 (KJS::ScheduledAction::ScheduledAction):
3881 2007-11-05 Adam Roben <aroben@apple.com>
3883 Allow passing a base class pointer to COMPtr::copyRefTo
3887 * platform/win/COMPtr.h:
3889 2007-11-05 Dan Bernstein <mitz@apple.com>
3891 Reviewed by Oliver Hunt.
3893 - fix ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key) when a class attribute is all-whitespace
3895 Test: fast/dom/class-all-whitespace.html
3897 * dom/StyledElement.cpp:
3898 (WebCore::StyledElement::parseMappedAttribute): Check if there is any
3899 non-whitespace character in the class attribute.
3901 2007-11-05 Brady Eidson <beidson@apple.com>
3905 Add transaction blocking to the DatabaseAuthorizer in preparation for the new version
3906 of the sql storage API
3908 * storage/DatabaseAuthorizer.cpp:
3909 (WebCore::DatabaseAuthorizer::allowTransaction):
3910 * storage/DatabaseAuthorizer.h:
3912 2007-11-05 Mark Rowe <mrowe@apple.com>
3914 Reviewed by Alp Toker.
3916 Have getMIMETypeForExtension return a null string when no MIME type is known
3917 for the extension rather than returning "text/plain". This prevents plugin data
3918 being dumped into object elements when plugins are disabled.
3920 * platform/gtk/MIMETypeRegistryGtk.cpp:
3921 (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
3923 2007-11-04 Sam Weinig <sam@webkit.org>
3925 Rubber-stamped by Adam Roben.
3927 Rename SecurityOrigin::allowsAccessFrom to SecurityOrigin::canAccess to
3930 * bindings/js/kjs_window.cpp:
3931 (KJS::Window::isSafeScript):
3932 * platform/SecurityOrigin.cpp:
3933 (WebCore::SecurityOrigin::canAccess):
3934 * platform/SecurityOrigin.h:
3936 2007-11-04 Timothy Hatcher <timothy@apple.com>
3940 Bug 15834: There are many subtle bugs in the Styles pane of the Web Inspector
3941 http://bugs.webkit.org/show_bug.cgi?id=15834
3943 - Broke up DocumentPanel and added three SidebarPane sub-classes.
3944 - Fixed many Style pane bugs, including:
3945 * Poor handling of duplicate properties in the same rule. Some of this can't be
3946 fixed since we can't only get the "winning" value for duplicate properties.
3947 So we should only show one entry per unique property name.
3948 * Computed style does not show font shorthand sub-properties if 'font' was used.
3949 * Property priority was broken, the wrong properties were crossed out.
3950 * The 'border' shorthand shows null for the shorthand value.
3951 * Shorthands didn't show their priority (e.g. !important).
3952 * HSL and HTML hex colors didn't have preview swatch blocks.
3953 * Code refactoring, making it easier to reuse for console.log later.
3955 * page/inspector/DocumentPanel.js: Move sidebar pane code to three seperate
3956 classes in new files.
3957 * page/inspector/MetricsSidebarPane.js: Added.
3958 * page/inspector/Panel.js: Remove an InspectorController.log() call.
3959 * page/inspector/PropertiesSection.js: Add the section to the TreeOutline.
3960 So TreeElements can access properties on their section.
3961 * page/inspector/PropertiesSidebarPane.js: Added.
3962 * page/inspector/SidebarPane.js: Remove the explicit asignment of the
3963 onexpand and oncollapse to null. These were hiding prototypes.
3964 * page/inspector/StylesSidebarPane.js: Added.
3965 * page/inspector/inspector.html: Include the new script files.
3966 * page/inspector/treeoutline.js: If a null representedObject is passed
3967 in just use a empty object.
3969 2007-11-04 David D. Kilzer <ddkilzer@webkit.org>
3971 Fix build when spaces appear in the WebKit source path.
3973 Reviewed by Mark Rowe.
3975 * bindings/scripts/IDLParser.pm: Use safer open() method which lists
3976 arguments individually and prevents the need to work around spaces
3979 2007-11-04 Alp Toker <alp@atoker.com>
3981 Reviewed by Alexey Proskuryakov.
3983 Fix a crash when no clipboard text is available
3985 * platform/gtk/PasteboardGtk.cpp:
3986 (WebCore::Pasteboard::plainText):
3988 2007-11-03 Darin Adler <darin@apple.com>
3992 - WebCore part of http://bugs.webkit.org/show_bug.cgi?id=15821
3993 remove unused PCRE features for speed
3995 * page/Frame.cpp: (WebCore::Frame::matchLabelsAgainstElement):
3996 * page/mac/FrameMac.mm: (WebCore::Frame::matchLabelsAgainstElement):
3997 Remove use of "[[:digit:]]" syntax. This hasn't worked for some time.
4000 * platform/RegularExpression.h: Remove the unused cap function. We can
4001 add it back later if we find we need it.
4002 * platform/RegularExpression.cpp:
4003 (WebCore::RegularExpression::Private::compile): Update for JavaScriptCore
4004 regular expression entry point changes.
4005 (WebCore::RegularExpression::Private::~Private): Ditto.
4006 (WebCore::RegularExpression::match): Remove the code to set PCRE_NOTBOL.
4007 This means that regular expressions with metacharactesr like ^ in them
4008 won't work any more with non-whole-string searches, but we don't use
4009 any regular expressions like that.
4011 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
4013 Update the link stubs to match the current build,
4014 and fix coding style issues.
4016 Reviewed by Mark Rowe.
4018 * platform/wx/TemporaryLinkStubs.cpp:
4019 (loadResourceIntoArray):
4020 (findNextSentenceFromIndex):
4021 (findSentenceBoundary):
4022 (Frame::dashboardRegionsChanged):
4023 (WebCore::historyContains):
4024 (CachedPage::close):
4025 (Editor::showStylesPanel):
4026 (EventHandler::passSubframeEventToSubframe):
4027 (EventHandler::passWheelEventToWidget):
4028 (WebCore::currentTextBreakLocaleID):
4030 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
4032 wx <-> WebKit conversions for IntPoint, IntRect and FloatRect
4034 Reviewed by Mark Rowe.
4036 * platform/graphics/wx/FloatRectWx.cpp: Added.
4037 * platform/graphics/wx/IntPointWx.cpp: Added.
4038 * platform/graphics/wx/IntRectWx.cpp: Added.
4040 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
4042 wx <-> WebKit data type conversions for Pen and Color.
4044 Reviewed by Darin Adler.
4046 * platform/graphics/wx: Added.
4047 * platform/graphics/wx/ColorWx.cpp: Added.
4048 * platform/graphics/wx/PenWx.cpp: Added.
4050 2007-11-03 Sam Weinig <sam@webkit.org>
4054 Remove dummy variable from ClassInfo reducing the size of the struct by 1 word.
4055 The variable had been kept around for binary compatibility, but since nothing
4056 else is there is no point in continuing to keep it around.
4058 * bindings/js/JSDOMExceptionConstructor.cpp:
4060 * bindings/js/JSHTMLInputElementBase.cpp:
4062 * bindings/js/JSNamedNodesCollection.cpp:
4064 * bindings/js/JSXMLHttpRequest.cpp:
4066 * bindings/js/JSXSLTProcessor.cpp:
4068 * bindings/js/kjs_css.cpp:
4070 * bindings/js/kjs_events.cpp:
4072 * bindings/js/kjs_navigator.cpp:
4074 * bindings/js/kjs_window.cpp:
4076 * bindings/scripts/CodeGeneratorJS.pm:
4078 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
4080 Build fixes to get wx impls. building on trunk.
4082 Reviewed by Mark Rowe.
4084 * platform/wx/DragDataWx.cpp:
4085 (WebCore::DragData::containsFiles):
4086 (WebCore::DragData::asFilenames):
4087 * platform/wx/DragImageWx.cpp:
4088 (WebCore::scaleDragImage):
4089 * platform/wx/MimeTypeRegistryWx.cpp:
4090 (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
4091 * platform/wx/MouseEventWx.cpp:
4092 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
4093 * platform/wx/MouseWheelEventWx.cpp:
4094 * platform/wx/PasteboardWx.cpp:
4095 (WebCore::Pasteboard::writeImage):
4096 * platform/wx/WidgetWx.cpp:
4097 (WebCore::Widget::setCursor):
4099 2007-11-03 David D. Kilzer <ddkilzer@webkit.org>
4101 Sort files(...); sections of Xcode project files.
4103 Rubber-stamped by Darin.
4105 * WebCore.xcodeproj/project.pbxproj:
4106 * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
4108 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
4110 Coding style fixes for platform/wx files.
4112 Reviewed by Mark Rowe.
4114 * platform/wx/ClipboardWx.cpp:
4115 * platform/wx/GlyphMapWx.cpp:
4116 * platform/wx/ScreenWx.cpp:
4118 2007-11-03 Alp Toker <alp@atoker.com>
4120 Reviewed by Mark Rowe.
4122 Implement platform scrollbar static width/height getters
4124 * platform/gtk/PlatformScrollBar.h:
4125 * platform/gtk/PlatformScrollBarGtk.cpp:
4127 (PlatformScrollbar::horizontalScrollbarHeight):
4129 2007-11-03 Alp Toker <alp@atoker.com>
4131 Reviewed by Mark Rowe.
4133 Cast function pointers to gpointer.
4135 * platform/gtk/PlatformScrollBarGtk.cpp:
4136 (PlatformScrollbar::~PlatformScrollbar):
4138 2007-11-03 Alp Toker <alp@atoker.com>
4140 Reviewed by Adam Roben.
4142 RenderThemeGtk implementation based on Mozilla's GTK+ style code
4144 There is still work needed to complete this feature.
4147 * platform/gtk/RenderThemeGtk.cpp:
4149 (WebCore::RenderThemeGtk::RenderThemeGtk):
4150 (WebCore::supportsFocus):
4151 (WebCore::RenderThemeGtk::supportsFocusRing):
4152 (WebCore::RenderThemeGtk::controlSupportsTints):
4153 (WebCore::RenderThemeGtk::baselinePosition):
4154 (WebCore::adjustMozStyle):
4155 (WebCore::setMozState):
4156 (WebCore::paintMozWidget):
4157 (WebCore::setButtonPadding):
4158 (WebCore::setToggleSize):
4159 (WebCore::RenderThemeGtk::setCheckboxSize):
4160 (WebCore::RenderThemeGtk::paintCheckbox):
4161 (WebCore::RenderThemeGtk::setRadioSize):
4162 (WebCore::RenderThemeGtk::paintRadio):
4163 (WebCore::RenderThemeGtk::adjustButtonStyle):
4164 (WebCore::RenderThemeGtk::paintButton):
4165 (WebCore::RenderThemeGtk::adjustMenuListStyle):
4166 (WebCore::RenderThemeGtk::paintMenuList):
4167 (WebCore::RenderThemeGtk::adjustTextFieldStyle):
4168 (WebCore::RenderThemeGtk::paintTextField):
4169 (WebCore::RenderThemeGtk::adjustSearchFieldResultsButtonStyle):
4170 (WebCore::RenderThemeGtk::paintSearchFieldResultsButton):
4171 (WebCore::RenderThemeGtk::adjustSearchFieldResultsDecorationStyle):
4172 (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
4173 (WebCore::RenderThemeGtk::adjustSearchFieldCancelButtonStyle):
4174 (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
4175 (WebCore::RenderThemeGtk::adjustSearchFieldStyle):
4176 (WebCore::RenderThemeGtk::paintSearchField):
4177 (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
4178 (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
4179 (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
4180 (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
4181 (WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor):
4182 (WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor):
4183 (WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor):
4184 (WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor):
4185 (WebCore::RenderThemeGtk::caretBlinkFrequency):
4186 (WebCore::RenderThemeGtk::systemFont):
4187 (WebCore::gtkStyleSetCallback):
4188 (WebCore::RenderThemeGtk::gtkContainer):
4189 (WebCore::RenderThemeGtk::gtkEntry):
4190 (WebCore::RenderThemeGtk::gtkTreeView):
4191 * platform/gtk/RenderThemeGtk.h:
4192 * platform/gtk/gtk2drawing.c: Added.
4193 (moz_gtk_enable_style_props):
4194 (ensure_window_widget):
4195 (setup_widget_prototype):
4196 (ensure_button_widget):
4197 (ensure_checkbox_widget):
4198 (ensure_radiobutton_widget):
4199 (ensure_scrollbar_widget):
4200 (ensure_spin_widget):
4201 (ensure_scale_widget):
4202 (ensure_entry_widget):
4203 (ensure_option_menu_widget):
4204 (ensure_arrow_widget):
4205 (ensure_handlebox_widget):
4206 (ensure_toolbar_widget):
4207 (ensure_tooltip_widget):
4208 (ensure_tab_widget):
4209 (ensure_progress_widget):
4210 (ensure_frame_widget):
4211 (ensure_menu_bar_widget):
4212 (ensure_menu_bar_item_widget):
4213 (ensure_menu_popup_widget):
4214 (ensure_menu_item_widget):
4215 (ensure_check_menu_item_widget):
4217 (TSOffsetStyleGCArray):
4219 (moz_gtk_button_paint):
4221 (moz_gtk_checkbox_get_metrics):
4222 (moz_gtk_radio_get_metrics):
4223 (moz_gtk_checkbox_get_focus):
4224 (moz_gtk_radio_get_focus):
4225 (moz_gtk_button_get_focus):
4226 (moz_gtk_option_menu_get_metrics):
4227 (moz_gtk_toggle_paint):
4228 (calculate_arrow_dimensions):
4229 (moz_gtk_scrollbar_button_paint):
4230 (moz_gtk_scrollbar_trough_paint):
4231 (moz_gtk_scrollbar_thumb_paint):
4232 (moz_gtk_spin_paint):
4233 (moz_gtk_scale_paint):
4234 (moz_gtk_scale_thumb_paint):
4235 (moz_gtk_gripper_paint):
4236 (moz_gtk_entry_paint):
4237 (moz_gtk_option_menu_paint):
4238 (moz_gtk_dropdown_arrow_paint):
4239 (moz_gtk_container_paint):
4240 (moz_gtk_toggle_label_paint):